今天我做了一下爬取KFC的小代码程序。下面是代码段。
import requests
import json
if __name__=='__main__':
url ='http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:75.0) Gecko/20100101 Firefox/75.0",
"Cookie": "KLBRSID=76cac537517c99f2fa8f912b4403b8f8|1588742007|1588738530"
}
local111 = input('enter a local:')
page_index = input('enter a pageindex:')
params = {
'cname':'','pid':'','keyword':local111,'pageIndex':page_index,'pageSize': '10',
}
ccokies ={
'KLBRSID':'a34b6eb1eda6f7a05724ede2e440cdc7 | 1588737322 | 1588737245'
}
response = requests.post(url=url,params=params,cookies=ccokies,headers=headers)#获取数据
local_text = response.text#响应数据
result = json.loads(local_text)
Table =result['Table1']
#排列格式
def iteminfo(item):
infor ='{},{},{},{}\r\n'.format(item['rownum'],item['storeName'],item['addressDetail'],item['pro'])
return infor
#存储数据
fp= open('./kfc.json','w',encoding='utf-8')
for item in Table:
print(iteminfo(item))
fp.write(iteminfo(item))
print('over!!!')
相比于前俩次的程序,多了一个排列,不至于结果看着那么凌乱。
输出结果如下