python爬虫之kfc

一起进步吧!感谢大家的支持和关注

需求

将餐厅的位置信息进行数据爬取


分析

目标地址:https://www.kfc.com.cn/kfccda/storelist/index.aspx
在这里插入图片描述
在这里插入图片描述


问题

  • 发起的是post请求
  • 载荷只有cname变化
  • 持续化存储怎么换行
  • 文件以为什么用追加方式
  • post中参数用data传递

源代码

import requests

# 分析
# https://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=cname
# 载荷只有cname 变化
# post请求

head = {  # 存放需要伪装的头信息
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36'
}
# post请求的请求参数
data = {
    "cname": "北京",
    "pid": "",
    "pageIndex": "1",
    "pageSize": "10",
}
url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=cname'
# 在post请求中,处理请求参数的是data这个参数不是params
res = requests.post(url=url, headers=head, data=data).json()

for dic in res['Table1']:
    name = dic['storeName']
    addr = dic['addressDetail']
    with open("kfc.txt","a",encoding="utf-8") as f:
        text =f"店名:{name}   地址:{addr} \n"
        f.write(text)

print("爬取成功")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值