我觉得我生活在这世上二十多年里,去过最多的餐厅就是肯德基小时候逢生日必去,现在长大了,肯德基成了我的日常零食下班后从门前路过饿了便会进去点分黄金鸡块或者小吃拼盘早上路过,会买杯咖啡。主要快捷美味且饱腹,而且到处都是总是会路过,现在只要一饿,心心念念便是肯德基的味道
环境介绍
python 3.6
pycharm
requests
csv
爬虫的一般思路
1、确定爬取的url路径,headers参数
2、发送请求 -- requests 模拟浏览器发送请求,获取响应数据
3、解析数据
4、保存数据
步骤
1、确定爬取的url路径,headers参数
先爬取北京的数据
base_url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'
headers = {'user-agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36'}
data = {
'cname': '',
'pid': '',
'keyword': '北京',
'pageIndex': '1',
'pageSize': '10',
}
2、发送请求 -- requests 模拟浏览器发送请求,获取响应数据
response = requests.post(url=base_url, headers=headers, data=data)
json_data = response.json()
# pprint.pprint(json_data)
3、解析数据
data_list = json_data['Table1']
# pprint.pprint(data_list)
# 构建循环,解析数据字段
for ls in data_list:
storeName = ls['storeName'] + '餐厅' # 餐厅名称
cityName = ls['cityName'] # 餐厅城市
addressDetail = ls['addressDetail'] # 餐厅地址
pro = ls['pro'] # 餐厅详情
# print(storeName, cityName, addressDetail, pro)
4、保存数据
print('正在爬取:', storeName)
with open('data.csv', 'a', newline='') as csvfile: # newline='' 指定一行一行写入
csvwriter = csv.writer(csvfile, delimiter=',') # delimiter=',' csv数据的分隔符
csvwriter.writerow([storeName, cityName, addressDetail, pro]) # 序列化数据,写入csv
5、全国315个城市的数据
获取拉勾网315个城市的数据