安装

# 进度条
pip install tqdm

code:

import json
from urllib import request, parse
from tqdm import tqdmclass GetKFCAddress:# 请求头信息headers = {'Referer': 'http://www.kfc.com.cn/kfccda/storelist/index.aspx','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36','Cookie': "ASP.NET_SessionId = pk43tx2lplhrzsdcnljl1gc5;Hm_lvt_1039f1218e57655b6677f30913227148 = 1585564393;Hm_lpvt_1039f1218e57655b6677f30913227148 = 1585564855;KLBRSID = a34b6eb1eda6f7a05724ede2e440cdc7 | 1585617345 | 1585617345",'X-Requested-With': 'XMLHttpRequest',}# 初始化数据def __init__(self,city,path,page=1):self.city = cityself.url = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'self.path = pathself.page = pagedef prepare_request(self,post_data):# 通过urlencode进行编码encode_post_data = parse.urlencode(post_data).encode('utf-8')res = request.Request(self.url, data=encode_post_data, headers=GetKFCAddress.headers)req = request.urlopen(res)return reqdef saveaddress(self,json_obj):# 对感兴趣的内容进行提取(依据json格式来提取)for film_dict in tqdm(json_obj['Table1']):title = film_dict['storeName']rate = film_dict["addressDetail"]with open(self.path, "a", encoding='utf-8') as fp:fp.write("storeName:{}餐厅, addressDetail:{}".format(title, rate) + '\n')def getaddress(self):while True:post_data = {'cname':'','pid':'','keyword':f'{self.city}','pageIndex': f'{self.page}',}# 获取请求对象req = self.prepare_request(post_data)# 判断请求数据,是否成功if not req.code == 200:return '获取失败!'text = req.read().decode('utf-8')json_obj = json.loads(text)print(json_obj['Table1'])# 到达最后一页,跳出循环if not json_obj['Table1']:breakelse:self.page += 1# 保存获取的数据信息self.saveaddress(json_obj)if __name__ == '__main__':# 数据保存路径path = 'KFC_Address.txt'# 获取数据的城市city = '深圳'get_kfc_address = GetKFCAddress(city,path)get_kfc_address.getaddress()

Python爬虫 输入城市 获取对应KFC餐厅名字及地址 -- KFC店铺位置抓取相关推荐

  1. Python爬虫入门【19】: B站博人传评论数据抓取 scrapy

    1. B站博人传评论数据爬取简介 今天想了半天不知道抓啥,去B站看跳舞的×××姐,忽然看到了评论,那就抓取一下B站的评论数据,视频动画那么多,也不知道抓取哪个,选了一个博人传跟火影相关的,抓取看看.网 ...

  2. Python爬虫基础-如何获取网页源代码

    Python爬虫基础-如何获取网页源代码 网络爬虫(Web Crawler),又称网页蜘蛛(Web Spider),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.爬虫程序根据一组特定的规则 ...

  3. Python爬虫入门教程【4】:美空网未登录图片爬取

    美空网未登录图片----简介 上一篇写的时间有点长了,接下来继续把美空网的爬虫写完,这套教程中编写的爬虫在实际的工作中可能并不能给你增加多少有价值的技术点,因为它只是一套入门的教程,老鸟你自动绕过就可 ...

  4. python3爬虫系列23之selenium+腾讯OCR识别验证码登录微博且抓取数据

    python3爬虫系列23之selenium+腾讯OCR识别验证码登录微博且抓取数据 1.前言 上一篇是一个 python3爬虫系列22之selenium模拟登录需要验证码的微博且抓取数据, 我们是首 ...

  5. 获取微信html代码,微信小程序云开发js抓取网页内容

    最近在研究微信小程序的云开发功能.云开发最大的好处就是不需要前端搭建服务器,可以使用云端能力,从零开始写出来一个能上线的微信小程序,避免了买服务器的开销,对于个人来尝试练手微信小程序从前端到后台的开发 ...

  6. python 爬虫源代码-Python爬虫学习之获取指定网页源码

    本文实例为大家分享了Python获取指定网页源码的具体代码,供大家参考,具体内容如下 1.任务简介 前段时间一直在学习Python基础知识,故未更新博客,近段时间学习了一些关于爬虫的知识,我会分为多篇 ...

  7. Python爬虫教你获取4K超清壁纸图片,手把手教你跟我一起爬!

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云 作者:Python进阶者 ( 想要学习Python?Pyth ...

  8. Python爬虫:Xpath获取关键标签,实现盖楼抽奖

    目录 前言 分析链接 切分提取tid 随机提取评论的内容 盖楼刷抽奖 前言 目前对于Python来说,使用最多的功能肯定是Python爬虫.比如抢购茅台以及刷评论,盖楼等抽奖活动贴,都可以应用到爬虫的 ...

  9. python爬虫系列:获取同花顺沪深上市公司信息

    转自微信公众号-----数据观察 沪.深证券交易所自1990年成立以来,已伴随中国经济发展将近30年了.在这将近30年里,沪.深股市起起落落.跌跌撞撞顽强走出了一条支撑中国企业.中国经济发展的股市成长 ...

最新文章

  1. OpenStack AMQP与kombu
  2. Python 之excle的读写
  3. eclipse注释日期格式修改
  4. java私有属性和私有方法_Java接口–历年来Java 9之旅–默认方法和私有方法
  5. Spring Boot和Hibernate:打印查询和变量
  6. C++PrimerPlus学习——第十七章编程练习
  7. 在python中创建虚拟环境和Django对数据库的操作(一)
  8. oracle为表空间增加数据文件_只读数据文件损坏恢复实验记录
  9. javase和java区别_javase和java有什么区别
  10. ICD3 - Cannot connect to USB device. Unrecognized endpoint.
  11. 【c语言】两个栈实现一个队列
  12. 在OPENSTACK中 WIN7和WIN2008 R2实例启动时蓝屏报 STOP:0X0000005DT
  13. 会议OA项目之我的审批签字功能
  14. 关于dcm4chee方面的问题,求各位英雄帮助,小女子感激不尽.... ...
  15. python是动态语言图片_利用python图片生成,需10几行代码,生成的动态表情包(小黄鸭)...
  16. java时间段分割_任意一个起止时间段(如:20160101-20161009),用java将这个时间段拆分成一个个按自然周组成的时间段...
  17. 【LINUX】libgd-GD库安装
  18. 盘点NBA历史上最强球员前十排行榜:沙奎尔·奥尼尔
  19. 中国大学985/211表、九校联盟C9
  20. Python小爬虫:爬取开心网日记,乐趣无穷

热门文章

  1. Centos7配置本地yum源、epel源
  2. java检测磁盘空间
  3. matlab 更改坐标轴名称,MATLAB 设置坐标名称,坐标刻度,坐标刻度名称,坐标点显示...
  4. 红日安全ATT&CK靶机实战系列之vulnstack7
  5. python 正则 匹配任意字符串_Python正则表达式匹配字符串中的任意纯数字
  6. 13省Cc8-打印十字图(小明为某机构设计了一个十字型的徽标(并非红十字会啊),如下所示)
  7. (已拿offer)技术四面+交叉面+HR面-阿里六面
  8. npm install没有生成node_modules文件夹
  9. witchit找不到服务器,《witchit》需要什么配置 最低配置要求一览
  10. asp论坛回复功能怎么实现_微信公众号整合群发图文消息功能怎么实现?