文章目录
一. 申请Key环节
1. 注册账号
https://lbs.qq.com?lbs_invite=6K2RFL6
使用QQ号、或者微信、或者手机5秒钟就OK了,真爽
凑这里去注册,按照提示一步一步进行即可,很简单。
2. 创建key
,用于调用接口的授权
戳这里创建key,点击创建新秘钥
输入相应内容:
别忘了勾选同意条款,然后点击提交。
成功界面如下:
3. 设置Key
重点勾选WebServiceAPI
点击保存。
4. 点击保存key
我的key为:
CFKBZ-PPV3R-FSYWT-WUYKF-UBXDT-4OB2R
大家可以拿去用,别乱搞啊。
二. 使用WebServiceAPI爬取想要的数据
使用的是地点搜索接口,详情戳这里,示例请求地址如下:
https://apis.map.qq.com/ws/place/v1/search?boundary=region(%E5%90%88%E8%82%A5%E5%B8%82)&page_size=20&page_index=1&keyword=%E6%9C%8D%E5%8A%A1%E5%8C%BA&key=CFKBZ-PPV3R-FSYWT-WUYKF-UBXDT-4OB2R
核心参数介绍:
boundary
,示例:region(合肥市),目前只支持城市。keyword
,示例:keyword=服务区,注意键值要进行URL编码(推荐encodeURI),具体类型可以参照下面的POI分类表的三级名称page_size
,示例:page_size=10,每页条目数,最大限制为20条page_index
,示例:page_index=2, 第x页,默认第1页key
,示例: key=d84d6d83e0e51e481e50454ccbe8986b,开发密钥(Key)就是我们申请的Key
POI分类表
全量分类地址:戳这里
一级名称 | 二级分类 | 三级名称 | 完整名称 |
---|---|---|---|
基础设施 | 公共设施 | 基础设施:公共设施 | 基础设施:公共设施 |
公共厕所 | 基础设施:公共设施:公共厕所 | ||
男洗手间 | 基础设施:公共设施:男洗手间 | ||
女洗手间 | 基础设施:公共设施:女洗手间 | ||
无障碍洗手间 | 基础设施:公共设施:无障碍洗手间 | ||
座椅设施 | 基础设施:公共设施:座椅设施 | ||
公用电话 | 基础设施:公共设施:公用电话 | ||
紧急避难场所 | 基础设施:公共设施:紧急避难场所 | ||
其它公共设施 | 基础设施:公共设施:其它公共设施 | ||
道路附属 | 道路附属 | 基础设施:道路附属 | |
收费站 | 基础设施:道路附属:收费站 | ||
服务区 | 基础设施:道路附属:服务区 | ||
道路出入口 | 基础设施:道路附属:道路出入口 | ||
路口 | 基础设施:道路附属:路口 | ||
桥 | 基础设施:道路附属:桥 | ||
其它道路附属 | 基础设施:道路附属:其它道路附属 |
爬取合肥市服务区示例
可以直接复制下面url到浏览器输入测试:
https://apis.map.qq.com/ws/place/v1/search?boundary=region(%E5%90%88%E8%82%A5%E5%B8%82)&page_size=20&page_index=1&keyword=%E6%9C%8D%E5%8A%A1%E5%8C%BA&key=CFKBZ-PPV3R-FSYWT-WUYKF-UBXDT-4OB2R
返回结果示例:
结果解释
名称 | 类型 | 必填 | 说明 | |
---|---|---|---|---|
status | number | 是 | 状态码,0为正常, 310请求参数信息有误, 311Key格式错误, 306请求有护持信息请检查字符串, 110请求来源未被授权 | |
message | string | 是 | 状态说明 | |
count | number | 是 | 本次搜索结果总数,另外本服务限制最多返回200条数据(data),翻页(page_index)超过搜索结果总数 或 最大200条限制时,将返回最后一页数据。 | |
data | array | 是 | 搜索结果POI数组,每项为一个POI对象 | |
id | string | 是 | POI唯一标识 | |
title | string | 是 | POI名称 | |
address | string | 是 | 地址 | |
tel | string | 是 | 电话 | |
category | string | 是 | POI分类 | |
type | number | 是 | POI类型,值说明:0:普通POI / 1:公交车站 / 2:地铁站 / 3:公交线路 / 4:行政区划 | |
location | object | 是 | 坐标 | |
lat | number | 是 | 纬度 | |
lng | number | 是 | 经度 | |
ad_info | object | 是 | 行政区划信息 | |
adcode | number | 是 | 行政区划代码 | |
province | string | 是 | 省 | |
city | string | 是 | 市 | |
district | string | 是 | 区 |
注意
腾讯地图返回的坐标系跟高德的一样都是火星坐标系,注意坐标系间的转换
扩展
想爬什么类型的数据,哪个城市的数据,根据参数和POI分类即可实现自由爬取,美滋滋!
QQ群【837324215】
关注我的公众号【Java大厂面试官】,回复:架构、资源等关键词(更多关键词,关注后注意提示信息)获取更多免费资料。
公众号也会持续输出高质量文章,和大家共同进步。