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 时间处理datetime实例
Sep 06 Python
Python实现线程状态监测简单示例
Mar 28 Python
Django forms组件的使用教程
Oct 08 Python
将Python字符串生成PDF的实例代码详解
May 17 Python
Python中查看变量的类型内存地址所占字节的大小
Jun 26 Python
Django 开发调试工具 Django-debug-toolbar使用详解
Jul 23 Python
使用TensorFlow直接获取处理MNIST数据方式
Feb 10 Python
40行Python代码实现天气预报和每日鸡汤推送功能
Feb 27 Python
Python计算IV值的示例讲解
Feb 28 Python
PyCharm 无法 import pandas 程序卡住的解决方式
Mar 09 Python
基于OpenCV的路面质量检测的实现
Nov 04 Python
使用Pytorch训练two-head网络的操作
May 28 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设计聊天室步步通
2006/10/09 PHP
推荐一款MAC OS X 下php集成开发环境mamp
2014/11/08 PHP
在CentOS系统上从零开始搭建WordPress博客的全流程记录
2016/04/21 PHP
php中文乱码问题的终极解决方案汇总
2017/08/01 PHP
laravel 5异常错误:FatalErrorException in Handler.php line 38的解决
2017/10/12 PHP
PHP实现获取url地址中顶级域名的方法示例
2019/06/05 PHP
JQuery魔力之$("tagName")与selector
2012/03/05 Javascript
jQuery操作Select选择的Text和Value(获取/设置/添加/删除)
2013/03/06 Javascript
使用jQuery validate 验证注册表单实例演示
2013/03/25 Javascript
jquery mobile实现拨打电话功能的几种方法
2013/08/05 Javascript
setTimeout自动触发一个js的方法
2014/01/15 Javascript
jquery数组封装使用方法分享(jquery数组遍历)
2014/03/25 Javascript
Angularjs之filter过滤器(推荐)
2016/11/27 Javascript
JavaScript面向对象精要(下部)
2017/09/12 Javascript
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
深入浅析vue中cross-env的使用
2019/09/12 Javascript
js实现整体缩放页面适配移动端
2020/03/31 Javascript
nuxt 实现在其它js文件中使用store的方式
2020/11/05 Javascript
python实现的二叉树算法和kmp算法实例
2014/04/25 Python
从零学Python之引用和类属性的初步理解
2014/05/15 Python
python九九乘法表的实例
2017/09/26 Python
Python通过Django实现用户注册和邮箱验证功能代码
2017/12/11 Python
对pandas里的loc并列条件索引的实例讲解
2018/11/15 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
numpy实现神经网络反向传播算法的步骤
2019/12/24 Python
使用Python对Dicom文件进行读取与写入的实现
2020/04/20 Python
基于opencv实现简单画板功能
2020/08/02 Python
python实现登录与注册系统
2020/11/30 Python
BONIA官方网站:国际奢侈品牌和皮革专家
2016/11/27 全球购物
英国打印机墨盒销售网站:Ink Factory
2019/10/07 全球购物
世界上最大的乐谱选择:Sheet Music Plus
2020/01/18 全球购物
岳庙导游词
2015/02/04 职场文书
求职意向书范本
2015/05/11 职场文书
《迟到》教学反思
2016/02/24 职场文书
小学生优秀作文范文(六篇)
2019/07/10 职场文书
python plt.plot bar 如何设置绘图尺寸大小
2021/06/01 Python