本人之前对百度地图和Python并不了解,纯属小白一枚,想要实现的目标也并不高,大概爬取100条就够了,使用的方法也比较简单。
在使用爬虫技术爬取百度地图poi的信息时,由于百度地图的地点详情检索服务对一次性查询uid(也就是地点)的数量有限制,最多为10个。我使用两个demo实现这个目标:
demo1:获取10个uid
demo2:获取这10个uid的JSON数据并处理,保存为csv文件
重复10次,获得100个数据
#demo1
import requests
import json
ak = '自己的ak'
#https://api.map.baidu.com/place/v2/detail?uid=435d7aea036e54355abbbcc8&output=json&scope=2&ak=您的密钥
url = 'http://api.map.baidu.com/place/v2/search?query=景点®ion=洛阳&output=json&output=json&ak={}&page_num={}&page_size=10'
# query=景点 是你想查询的内容
# region=洛阳 是你想查询的城市
# page_num={} 是页码, 意思是第几页
# page_size=20 是每页显示的个数, 最大是20个,本次只取10个就