100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > python: 百度地图api爬虫

python: 百度地图api爬虫

时间:2019-06-28 21:58:41

相关推荐

python: 百度地图api爬虫

python网络爬虫的本质就是两步:

设置请求参数(url,headers,cookies,post或get验证等)访问目标站点的服务器;解析服务器返回的文档,提取需要的信息。

而API的工作机制与爬虫的两步类似,但也有些许不同:

1、API一般只需要设置url即可,且请求方式一般为“get”方式2、API服务器返回的通常是jsonxml格式的数据,解析更简单

本篇我们就演示如何运用Python结合百度地图API来批量获取想要的信息。

访问百度地图需要一个信令(ak), 具体申请百度apiak网上都有教程, 这里就不叙述了…Place APIWeb服务API打开百度地图APIPOI模块,网址:/index.php?title=webapi/guide/webservice-placeapi,这个页面详细介绍了Place API的请求参数及返回数据的情况。今天我们使用百度地图api的地点检索

import requestsimport jsonimport pymysqlak = '你自己申请的百度地图api的ak'url = 'http://api./place/v2/search?query=药店&region=郑州&output=json&output=json&ak={}&page_num={}&page_size=20'# query=药店 是你想查询的内容 # region=郑州 是你想查询的城市# page_num={} 是页码, 意思是第几页# page_size=20是每页显示的个数, 最大是20个i = 0 # 这里可以使用for循环 ,不过容易出现并发量超过约定,所以我这里先不用循环了 response = requests.get(url.format(ak,i))# 对网页进行请求jsondata = json.loads(response.text)# 对下载的内容进行loads一下for j in jsondata['results']:name = j.get('name')print('商店名字是:', name)# print(type(name))address = j.get('address')print('详细地址是:', address)tel = j.get('telephone')print('联系电话是:', tel)print('*' * 50)# 我做的是存入mysql的操作, 具体结果如下:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。