一篇文章教你如何使用python爬虫

一、什么是爬虫

 通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程。

1、爬虫带来的风险可以体现在如下2方面:

  •  爬虫干扰了被访问网站的正常运营
  • 爬虫抓取了收到法律保护的特定类型的数据或信息

2、爬虫在使用场景中的分类

  • 通用爬虫: 抓取系统重要组成部分。抓取的是一整张页面数据。
  •  聚焦爬虫: 是建立在通用爬虫的基础之上。抓取的是页面中特定的局部内容。
  •  增量式爬虫: 检测网站中数据更新的情况。只会抓取网站中最新更新出来的数据。

3、反爬机制

  • 门户网站,可以通过制定相应的策略或者技术手段,防止爬虫程序进行网站数据的爬取。

4、反反爬策略

  • 爬虫程序可以通过制定相关的策略或者技术手段,破解门户网站中具备的反爬机制,从而可以获取门户网站中

二、python爬虫request模块

1、requests模块

  • python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高。 作用:模拟浏览器发请求。

2、request模块如何使用

  • 指定url
  • UA伪装
  • 请求参数的处理
  •  发起请求
  •  获取响应数据
  • 持久化存储

三、爬虫实战

需求:爬取肯德基餐厅查询http://www.kfc.com.cn/kfccda/index.aspx中指定地点的餐厅数据

import requests
import json

# 爬取kfc门店地址
# 爬取url地址
url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'

# UA伪装
header = {
    'User-Agent' :'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36'
}
json_list = []
# 输入参数
kw = input("enter the keywords:")
# 组装参数
for page in range(1,7):
    page = str(page)
    para = {
        'cname': '',
        'pid': '',
        'keyword': kw,
        'pageIndex': page,
        'pageSize': '10'
    }
    # 发送post请求
    obj = requests.post(url=url,params=para,headers=header).json()
    json_list.append(obj)

#持久化数据
fileName = "address.json"
with open(fileName,'w',encoding="utf-8") as fp:
    json.dump(json_list,fp=fp,ensure_ascii=False)
print("over")

代码详细地址为:kfc爬取门店代码

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

境里婆娑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值