python requests爬取高德地图数据的实例


Posted in Python onNovember 10, 2018

如下所示:

1.pip install requests

2.pip install lxml

3.pip install xlsxwriter

import requests #想要爬必须引
from lxml import html #这个是用于页面爬取
import xlsxwriter#操作Excel表格库
 
workbook = xlsxwriter.Workbook('E:/test/test.xlsx')# 新建的Excel表格文档路径
worksheet = workbook.add_worksheet() # 建立sheet, 可以work.add_worksheet('employee')来指定sheet名,但中文名会报UnicodeDecodeErro的错误
i = 1;# 作用于Excel表格第几行数与接口第几页
#写一个死循环让他一直爬取数据
while (True):
 import json# 这里这么引入json是因为不这么引入当循环到第二次就会报没有引入json的错,所以循环引入了
 #接口str(i)表示第几页一定要转为字符串格式,要不会报不是字符串的错
 url = "https://www.amap.com/service/poiInfo?query_type=TQUERY&pagesize=20&pagenum="+str(i)+"&qii=true&cluster_state=5&need_utd=true&utd_sceneid=1000&div=PC1000&addr_poi_merge=true&is_classify=true&zoom=14.81&city=110000&geoobj=115.7|39.4|117.4|41.6&keywords=水果店" 
 # 将cookies字符串组装为字典 
 cookies_str = "guid=f86f-79f2-5b0b-69a3; UM_distinctid=16386a114ca143-07312d6ae4d5af8-47534130-1fa400-16386a114ccb85; CNZZDATA1255626299=1778515027-1526967763-https%253A%252F%252Fwww.baidu.com%252F%7C1527219534; cna=5hWHEx7lRkECAXL4l+2LMAfU; isg=BGBg3rAqL6QOz5OkNN5wbxWiMm7ywUxc_zvQMtpxLHsO1QD_gnkUwzbHaf3V_vwL; _uab_collina=152697209566826431413694; key=bfe31f4e0fb231d29e1d3ce951e2c780" 
 cookies_dict = {} 
 for cookie in cookies_str.split(";"): 
  k, v = cookie.split("=", 1) 
  cookies_dict[k.strip()] = v.strip() 
 pass
 # 其他请求头参数 
 headers = { 
  'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0' 
 }
 
 # 让服务器认为你是通过浏览器访问页面 
 page = requests.get(url=url,cookies=cookies_dict,headers=headers);
 # 转json
 json = json.loads(page.text);
 # 判断这个字段如果为未找到相关信息则跳出死循环
 if json['data']['lqii']['change_query_tip'] == '未找到"水果店"相关结果':
 break;
 pass
 # 获取json长度用于添加Excel第几行
 length = len(json['data']['poi_list']);
 # 循环json数据向Excel表格添加
 for index,j in enumerate(json['data']['poi_list']):
 worksheet.write(index+(i-1)*length,0,j['disp_name'])
 worksheet.write(index+(i-1)*length,1,j['tel'])
 worksheet.write(index+(i-1)*length,2,j['address'])
 pass
 i+=1
pass
workbook.close()#最后关闭Excel表格 注意事项,当Excel表格正在打开的情况下会报没有关闭的错所以请关闭Excel再运行此程序

以上这篇python requests爬取高德地图数据的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python登陆asp网站页面的实现代码
Jan 14 Python
利用Python中的输入和输出功能进行读取和写入的教程
Apr 14 Python
使用python绘制常用的图表
Aug 27 Python
python+selenium打印当前页面的titl和url方法
Jun 22 Python
Python使用Flask-SQLAlchemy连接数据库操作示例
Aug 31 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
Feb 12 Python
Django单元测试工具test client使用详解
Aug 02 Python
将Pytorch模型从CPU转换成GPU的实现方法
Aug 19 Python
Python实现微信中找回好友、群聊用户撤回的消息功能示例
Aug 23 Python
python 实现一个图形界面的汇率计算器
Nov 09 Python
Django中template for如何使用方法
Jan 31 Python
用python删除文件夹中的重复图片(图片去重)
May 12 Python
Python爬取商家联系电话以及各种数据的方法
Nov 10 #Python
Python中的取模运算方法
Nov 10 #Python
在Python中获取两数相除的商和余数方法
Nov 10 #Python
Python解决两个整数相除只得到整数部分的实例
Nov 10 #Python
从DataFrame中提取出Series或DataFrame对象的方法
Nov 10 #Python
pandas 数据归一化以及行删除例程的方法
Nov 10 #Python
python 重命名轴索引的方法
Nov 10 #Python
You might like
PHP调用MySQL的存储过程的实现代码
2008/08/12 PHP
浅析PHP中Collection 类的设计
2013/06/21 PHP
php实现与python进行socket通信的方法示例
2017/08/30 PHP
PHP实现抽奖功能实例代码
2020/06/30 PHP
JavaScript 获取用户客户端操作系统版本
2009/08/25 Javascript
combox改进版 页面原型参考dojo的,比网上jQuery的那些combox功能强,代码更小
2010/04/15 Javascript
jQuery插件zoom实现图片全屏放大弹出层特效
2015/04/15 Javascript
js上传图片及预览功能实例分析
2015/04/24 Javascript
javascript常用函数(2)
2015/11/05 Javascript
jquery实现邮箱自动填充提示功能
2015/11/17 Javascript
微信 java 实现js-sdk 图片上传下载完整流程
2016/10/21 Javascript
基于JS快速实现导航下拉菜单动画效果附源码下载
2016/10/27 Javascript
vue proxyTable 接口跨域请求调试的示例
2017/09/12 Javascript
node.js爬取中关村的在线电瓶车信息
2018/11/13 Javascript
基于jQuery的时间戳与日期间的转化
2019/06/21 jQuery
使用Node.js实现base64和png文件相互转换的方法
2020/03/11 Javascript
[54:47]Liquid vs VP Supermajor决赛 BO 第五场 6.10
2018/07/05 DOTA
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
解决seaborn在pycharm中绘图不出图的问题
2018/05/24 Python
对python 命令的-u参数详解
2018/12/03 Python
PyTorch 1.0 正式版已经发布了
2018/12/13 Python
解决python字典对值(值为列表)赋值出现重复的问题
2019/01/20 Python
使用python3构建文件传输的方法
2019/02/13 Python
Python使用LDAP做用户认证的方法
2019/06/20 Python
nginx搭建基于python的web环境的实现步骤
2020/01/03 Python
python中for in的用法详解
2020/04/17 Python
Python使用pycharm导入pymysql教程
2020/09/16 Python
用CSS3写的模仿iPhone中的返回按钮
2015/04/04 HTML / CSS
IE支持HTML5的解决方法
2009/10/20 HTML / CSS
英国现代市场:ARKET
2019/04/10 全球购物
竞争上岗演讲稿范文
2014/05/12 职场文书
检讨书怎么写
2015/01/23 职场文书
拿破仑传读书笔记
2015/07/01 职场文书
MySQL 使用索引扫描进行排序
2021/06/20 MySQL
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python
SQL实战演练之网上商城数据库商品类别数据操作
2021/10/24 MySQL