教你如何提取百度地图 POI 兴趣点
概述:
通过聚合数据提供的接口,获取百度地图的POI兴趣点,并存储至数据库中。
实现:
1、聚合数据百度POI接口说明
调用聚合数据,首先得注册聚合。聚合数据提供的百度地图POI的接口有三个:数据分类,查询数据和获取周边数据。想要获取百度POI兴趣点,涉及到的接口为数据分类,查询数据。
a、数据分类
接口地址:http://apis.juhe.cn/baidu/getCategory
支持格式:JSON/XML
请求方式:GET
请求示例:http://apis.juhe.cn/baidu/getCategory?key=您申请的APPKEY&fid=1
请求参数:
名称 |
类型 |
必填 |
说明 |
|
---|---|---|---|---|
key |
string |
是 |
应用APPKEY(应用详细页查询) |
|
fid |
string |
否 |
分类父ID,默认空,即全部分类,否则返回指定分类下的子类 |
|
dtype |
string |
否 |
返回数据的格式,xml或json,默认json |
返回字段:
名称 |
类型 |
说明 |
|
---|---|---|---|
error_code |
int |
返回码 |
|
reason |
string |
返回说明 |
|
result |
- |
返回结果集 |
|
id |
int |
分类ID |
|
name |
string |
分类名称 |
|
fid |
int |
父类ID,0则为一级分类 |
JSON返回示例:
{
"resultcode":"200",
"reason":"Return Successd!",
"result":[
{
"id":"17",
"name":"中式快餐",
"fid":"1"
},
{
"id":"18",
"name":"中餐馆",
"fid":"1"
},
{
"id":"19",
"name":"休闲餐饮",
"fid":"1"
},
{
"id":"20",
"name":"日韩式料理",
"fid":"1"
},
{
"id":"21",
"name":"西餐厅",
"fid":"1"
},
{
"id":"22",
"name":"西式快餐",
"fid":"1"
},
{
"id":"33",
"name":"东南亚菜",
"fid":"1"
}
]
}
b、查询数据
接口地址:http://apis.juhe.cn/baidu/getData
支持格式:JSON/XML
请求方式:POST/GET
请求示例:http://apis.juhe.cn/baidu/getData?key=您申请的APPKEY&cid=1&city=%E4%B8%8A%E6%B5%B7%E5%B8%82&page=2
请求参数:
名称 |
类型 |
必填 |
说明 |
|
---|---|---|---|---|
city |
string |
是 |
城市的名称,如:上海市 |
|
cid |
int |
否 |
分类ID,可从分类接口获取到,默认全部 |
|
keyword |
string |
否 |
名称包含的关键字 |
|
page |
string |
否 |
页数,默认第一页 最大50. |
|
pnums |
int |
否 |
每次返回数据数目,默认20,最大20 |
|
key |
string |
是 |
应用APPKEY(应用详细页查询) |
|
dtype |
string |
否 |
返回数据的格式,xml或json,默认json |
返回字段:
名称 |
类型 |
说明 |
|
---|---|---|---|
error_code |
int |
返回码 |
|
reason |
string |
返回说明 |
|
data |
- |
返回结果集 |
|
id |
INT |
餐厅的标识符 |
|
name |
string |
餐厅名称 |
|
province |
string |
省份 |
|
city |
string |
城市 |
|
address |
string |
详细地址 |
|
phoneNumber |
string |
联系电话 |
|
tags |
string |
标签 |
|
type1 |
INT |
所属一级分类ID |
|
type2 |
int |
所属二级分类ID |
|
tag |
string |
商圈 |
|
lng |
string |
经度(适合百度地图) |
|
lat |
string |
纬度 |
|
pageinfo |
- |
- |
|
nums |
int |
记录总数 |
|
pnums |
int |
每页显示条数 |
|
current |
int |
当前页 |
|
pageall |
int |
总页数 |
JSON返回示例:
{
"resultcode":"200",
"reason":"Return Successd!",
"result":{
"data":[
{
"id":"493567",
"title":"生良饭店",
"province":"上海市",
"city":"上海市",
"address":"上海市",
"tags":"餐饮",
"type1":"1",
"type2":"0",
"tag":"",
"lng":"121.375458",
"lat":"31.794554"
},
{
"id":"493568",
"title":"永兴饭店",
"province":"上海市",
"city":"上海市",
"address":"上海市",
"tags":"餐饮",
"type1":"1",
"type2":"0",
"tag":"",
"lng":"121.421982",
"lat":"31.767340"
},
{
"id":"493569",
"title":"猛东饭店",
"province":"上海市",
"city":"上海市",
"address":"庙镇镇合作社区竖星路210号",
"tags":"餐饮",
"type1":"1",
"type2":"0",
"tag":"小吃",
"lng":"121.372307",
"lat":"31.747095"
},
{
"id":"493570",
"title":"百顺酒家",
"province":"上海市",
"city":"上海市",
"address":"宏海公路2010",
"tags":"餐饮,中餐馆",
"type1":"1",
"type2":"18",
"tag":"",
"lng":"121.352936",
"lat":"31.720875"
},
{
"id":"493571",
"title":"群丰酒楼",
"province":"上海市",
"city":"上海市",
"address":"上海市",
"tags":"餐饮",
"type1":"1",
"type2":"0",
"tag":"",
"lng":"121.354179",
"lat":"31.720181"
}
],
"pageinfo":{
"nums":93720,
"pnums":"5",
"current":"2",
"pageall":18744
}
}
}
2、获取数据分类
根据提供的接口,获取数据全部分类的地址为:
http://apis.juhe.cn/baidu/getCategory?key=您的key&dtype=json
为方便使用,我将返回的数据整理成了表格形式,如下:
id |
fid |
name |
---|---|---|
1 |
0 |
餐饮 |
2 |
0 |
汽车服务 |
3 |
0 |
地产小区 |
4 |
0 |
公司企业 |
5 |
0 |
宾馆 |
6 |
0 |
金融 |
7 |
0 |
交通设施 |
8 |
0 |
教育 |
9 |
0 |
生活服务 |
10 |
0 |
旅游景点 |
11 |
0 |
名称标注类 |
12 |
0 |
购物 |
13 |
0 |
休闲娱乐 |
14 |
0 |
行政地标 |
15 |
0 |
*机构 |
16 |
0 |
医疗 |
17 |
1 |
中式快餐 |
18 |
1 |
中餐馆 |
19 |
1 |
休闲餐饮 |
20 |
1 |
日韩式料理 |
21 |
1 |
西餐厅 |
22 |
1 |
西式快餐 |
23 |
13 |
洗浴按摩 |
24 |
13 |
歌舞厅/夜总会/娱乐城 |
25 |
12 |
批发市场/集市 |
26 |
12 |
电器商场 |
27 |
7 |
停车场/停车区 |
28 |
15 |
党派团体 |
29 |
13 |
ktv |
30 |
5 |
星级宾馆酒店 |
31 |
9 |
便利店 |
32 |
15 |
机关单位 |
33 |
1 |
东南亚菜 |
34 |
4 |
厂矿 |
35 |
13 |
度假村/度假区 |
36 |
4 |
运输 |
37 |
7 |
飞机场 |
38 |
8 |
培训机构 |
39 |
8 |
高等教育 |
40 |
6 |
银行 |
41 |
4 |
物业管理 |
42 |
13 |
文化馆/文化宫/活动中心 |
43 |
5 |
旅店 |
44 |
3 |
小区/楼盘 |
45 |
4 |
文化媒体 |
46 |
12 |
综合商场/购物中心 |
47 |
13 |
休闲广场 |
48 |
13 |
体育场馆 |
49 |
4 |
职业介绍/人才交流 |
50 |
6 |
证券公司 |
51 |
16 |
综合医院 |
52 |
9 |
美容美发 |
53 |
9 |
邮局 |
54 |
13 |
健身中心 |
55 |
8 |
初等教育(小学) |
56 |
15 |
福利机构 |
57 |
14 |
村庄 |
58 |
8 |
学前教育 |
59 |
12 |
家居建材 |
60 |
8 |
中等教育 |
61 |
12 |
烟酒茶叶 |
62 |
5 |
招待所 |
63 |
7 |
公交车站 |
64 |
7 |
地铁/轻轨 |
65 |
3 |
售楼处 |
66 |
9 |
洗衣/干洗 |
67 |
2 |
汽车配件/装饰 |
68 |
4 |
旅行社 |
69 |
8 |
科研机构/教育 |
70 |
5 |
连锁快捷酒店 |
71 |
9 |
摄影冲印 |
72 |
6 |
保险公司 |
73 |
12 |
服装鞋帽 |
74 |
10 |
风景区/旅游区 |
75 |
12 |
超市 |
76 |
16 |
社区医疗/诊所/卫生所 |
77 |
6 |
atm |
78 |
6 |
农村信用社/城市信用社 |
79 |
2 |
汽车维修/养护/洗车 |
80 |
10 |
公园 |
81 |
4 |
公用事业 |
82 |
4 |
高新科技 |
83 |
12 |
文化办公 |
84 |
12 |
钟表眼镜 |
85 |
4 |
事务所 |
86 |
7 |
出入口 |
87 |
9 |
房屋租售中介 |
88 |
4 |
农林园艺 |
89 |
15 |
各级* |
90 |
12 |
珠宝饰品 |
91 |
12 |
礼品花卉 |
92 |
6 |
投资公司 |
93 |
14 |
乡镇 |
94 |
6 |
典当/当铺 |
95 |
4 |
婚介婚庆 |
96 |
4 |
新闻出版 |
97 |
10 |
美术馆/艺术馆 |
98 |
13 |
图书馆 |
99 |
4 |
工商业区 |
100 |
12 |
文物古玩 |
101 |
12 |
电子数码 |
102 |
7 |
交叉路口 |
103 |
10 |
博物馆 |
104 |
4 |
保安 |
105 |
16 |
药店/药房 |
106 |
9 |
彩票发行 |
107 |
13 |
迪吧 |
108 |
13 |
电影院 |
109 |
4 |
电信公司 |
110 |
10 |
展览馆/纪念馆 |
111 |
15 |
公检法机构 |
112 |
9 |
售票处 |
113 |
4 |
建筑装修 |
114 |
2 |
4s/汽车销售 |
115 |
2 |
汽车检验场 |
116 |
2 |
驾校 |
117 |
2 |
汽车租赁 |
118 |
7 |
长途汽车站 |
119 |
7 |
出租车站 |
120 |
9 |
电信营业厅 |
121 |
12 |
图书音像 |
122 |
4 |
高科技园区 |
123 |
13 |
网吧 |
124 |
7 |
加油站 |
125 |
7 |
火车站 |
126 |
16 |
医疗保健 |
127 |
15 |
涉外机构 |
128 |
9 |
家政服务 |
129 |
7 |
服务区 |
130 |
9 |
文印图文 |
131 |
12 |
母婴儿童 |
132 |
12 |
体育户外 |
133 |
12 |
摄影器材 |
134 |
9 |
家电维修 |
135 |
3 |
别墅 |
136 |
4 |
房地产开发 |
137 |
4 |
殡葬 |
138 |
4 |
出国留学 |
139 |
9 |
公厕 |
140 |
9 |
搬家 |
141 |
15 |
驻地机构 |
142 |
10 |
游乐园 |
143 |
13 |
diy手工 |
144 |
13 |
音乐厅 |
145 |
7 |
港口/码头 |
146 |
9 |
送水 |
147 |
9 |
报亭 |
148 |
10 |
文物古迹 |
149 |
10 |
动物园 |
150 |
10 |
植物园 |
151 |
10 |
教堂 |
152 |
13 |
剧院 |
153 |
11 |
道路名称 |
154 |
10 |
水族馆 |
155 |
7 |
桥 |
156 |
13 |
电子游戏 |
157 |
16 |
私人诊所 |
158 |
5 |
青年旅舍 |
159 |
15 |
*机构 |
160 |
7 |
收费处/收费站 |
161 |
7 |
环岛 |
162 |
7 |
红绿灯 |
163 |