肯德基餐厅信息查询网页
打开网页之后,在查询框中输入北京,然后点击查询,发现地址栏之中的url信息并没有发生变化,所以这里使用的是阿贾克斯查询动态渲染的方式。
这里面返回的内容为Content-Type:text/plain,也就是返回的是text的对应内容,所以可以用.text获取对应的文本信息。
源代码如下:
import requests
import json
url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx'
#原先url = https://movie.douban.com/j/chart/top_list?type=24&interval_id=100%3A90&action=&start=20&limit=20
#将?后面的数据都封装到相应的字典之中#将Query String Parameters中对应的5个参数粘贴过来
#浏览器最下面一栏的Query String Parameters能够查看到相应的5个参数
param = {'op':'keyword'
}
data = {'cname':'','pid':'','keyword':'北京','pageIndex':'1','pageSize':'10'
}
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36'
}
response = requests.post(url=url,params=param,data=data,headers=headers)
list_data = response.text
#进行持久化存储
fp = open('./location.txt','w',encoding='utf-8')
json.dump(list_data,fp=fp,ensure_ascii=False)
print('over!!!')