路飞学城IT作业:肯德基餐厅信息查询抓取,代码如下:
# 导入erquests (网络请求库)
import requests
import json
import time
# 指定url (指定爬取链接)
url ='http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx'
# 进行伪装!
requests_headers={
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 \
(KHTML, like Gecko) Chrome/87.0.4280.67 Safari/537.36 Edg/87.0.664.55'
}
# 封装请求参数 (每个url 都有自己的请求参数)
#params ={}
keyword="广州"
param_data={
'op': 'keyword', # op这个参数可以写一起
"cname": "",
"pid":"",
"keyword": keyword,
"pageIndex": "1",
"pageSize": "20"
}
# 也可以分开两个字典写
'''
param={
'op': 'keyword',
}
'''
# 设置睡眠时间 3秒
time.sleep(3)
# 发送请求 (使用get() 或者 post(), 然后分析是否是阿贾克斯请求)
response=requests.post(url=url,params=param_data, headers=requests_headers )
# 分开写要写成这样
#response=requests.post(url=url,params=param,data=param_data, headers=requests_headers )
# 获取响应数据 (处理数据的过程)
page_text = response.text
#page_json = response.json()
print(page_text)
#print('page_json')
'''
response_param=response.json()
print(response_param)
file_path = open('E:\python实例\爬虫第一课\实例5:作业—爬取肯德基餐厅信息查询\five响应数据.txt', 'w', encoding='utf-8')
response_param=json.dump(response_param, fp =file_path ,ensure_ascii=False)
'''
# 做数据存储 (存储数据的过程)
with open("E:\python实例\爬虫第一课\实例5:爬取肯德基餐厅信息查询\响应数据.txt","w",encoding='utf-8')\
as adi_data:
adi_data.write(page_text)
print('数据存储完成')
以上内容经供参考,不可用做非法用途!