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探索之pLSA实现代码
Oct 25 Python
python实现BackPropagation算法
Dec 14 Python
Django视图和URL配置详解
Jan 31 Python
python使用magic模块进行文件类型识别方法
Dec 08 Python
深入理解Python异常处理的哲学
Feb 01 Python
使用Flask-Cache缓存实现给Flask提速的方法详解
Jun 11 Python
python实现列表的排序方法分享
Jul 01 Python
Django中如何使用sass的方法步骤
Jul 09 Python
Pycharm连接远程服务器并实现远程调试的实现
Aug 02 Python
C++和python实现阿姆斯特朗数字查找实例代码
Dec 07 Python
在python中对于bool布尔值的取反操作
Dec 11 Python
python 实现图片批量压缩的示例
Dec 18 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
日本十大最佳动漫,全都是二次元的神级作品
2019/10/05 日漫
PHP页面转UTF-8中文编码乱码的解决办法
2015/10/20 PHP
PHP函数func_num_args用法实例分析
2015/12/07 PHP
PHP 500报错的快速解决方法
2016/12/14 PHP
使用javascript将时间转换成今天,昨天,前天等格式
2015/06/25 Javascript
小议JavaScript中Generator和Iterator的使用
2015/07/29 Javascript
你一定会收藏的Nodejs代码片段
2016/02/04 NodeJs
深入理解js数组的sort排序
2016/05/28 Javascript
vue项目国际化vue-i18n的安装使用教程
2018/03/14 Javascript
vscode配置vue下的es6规范自动格式化详解
2019/03/20 Javascript
vue+elementUI 复杂表单的验证、数据提交方案问题
2019/06/24 Javascript
jquery弹窗时禁止body滚动条滚动的例子
2019/09/21 jQuery
vue 开发企业微信整合案例分析
2019/12/02 Javascript
VueCli4项目配置反向代理proxy的方法步骤
2020/05/17 Javascript
JS常见错误(Error)及处理方案详解
2020/07/02 Javascript
[03:56]DOTA2完美大师赛趣味视频之小鸽子和Mineski打台球
2017/11/24 DOTA
[01:03:56]Mineski vs TNC 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
[54:30]Liquid vs Newbee 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python 打印对象的所有属性值的方法
2016/09/11 Python
Python中用post、get方式提交数据的方法示例
2017/09/22 Python
python消除序列的重复值并保持顺序不变的实例
2018/11/08 Python
Django 内置权限扩展案例详解
2019/03/04 Python
Python 操作mysql数据库查询之fetchone(), fetchmany(), fetchall()用法示例
2019/10/17 Python
TensorFlow实现批量归一化操作的示例
2020/04/22 Python
Python list和str互转的实现示例
2020/11/16 Python
纯CSS3制作漂亮带动画效果的主机价格表
2015/04/25 HTML / CSS
html5 canvas-2.用canvas制作一个猜字母的小游戏
2013/01/07 HTML / CSS
以下的初始化有什么区别
2013/12/16 面试题
分厂厂长岗位职责
2013/12/29 职场文书
售后服务经理岗位职责范本
2014/02/22 职场文书
2016年三八红旗手先进事迹材料
2016/02/26 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers
评测 | 大屏显示带收音机的高端音箱,JBL TUNE2便携式插卡音箱实测
2021/04/24 无线电
多人盗宝《绿林侠盗》第三赛季4.5上线 跨平台实装
2022/04/03 其他游戏
CSS控制继承中的height能变为可继承吗
2022/06/10 HTML / CSS
Redis实现分布式锁的五种方法详解
2022/06/14 Redis