【简介】
利用 Python 的 requests 库实现循环爬取某餐厅在北京的名单,并将抓取的数据保存为 JSON 格式的文件。
1. 导入模块以及所需要用到的库
本项目使用的是 requests 库和 json 库,因此需要导入这两个库。
import json
import requests
2.构造请求参数并发送请求
post_url:请求参数的网址
headers:UA伪装参数

data:为响应所携带的参数
post_url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 Edg/113.0.1774.57'
}
data = {
'cname': '',
'pid': '',
'keyword': '北京',
'pageIndex': '1',
'pageSize': '10',
}
resource=requests.post(url=post_url,data=data,headers=headers)
3.最后数据持久化存储
将resource获得的参数转换成json格式,将获得的数据持久化存储到kfc文件中
res=resource.json()
fp = open('kfc.json', 'w', encoding='utf-8')
json.dump(res, fp=fp, ensure_ascii=False)
print(res)
4.完整代码
import json
import requests
if __name__ == '__main__':
post_url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36 Edg/113.0.1774.57'
}
data = {
'cname': '',
'pid': '',
'keyword': '北京',
'pageIndex': '1',
'pageSize': '10',
}
resource=requests.post(url=post_url,data=data,headers=headers)
res=resource.json()
fp = open('kfc.json', 'w', encoding='utf-8')
json.dump(res, fp=fp, ensure_ascii=False)
print(res)
该代码示例展示了如何利用Python的requests库发送POST请求,获取北京地区的KFC餐厅信息,并将数据以JSON格式保存到文件。主要涉及网络请求、数据解析及文件存储。

被折叠的 条评论
为什么被折叠?



