1.POI数据介绍

POI数据介绍
POI是“Point of Interest”的缩写,中文可以翻译为“兴趣点”。POI数据会包含各种信息,如前面提到的名称、别名等信息,可以将这些信息看成一个个的标签(tag),而分类是其中最重要的一个tag,在OSM中 “An OSM element should represent a single on-the-ground feature once and only once”作为一个基本规则,一般来说POI数据可以进行一级和二级分类,每个分类都有对应的行业和名称,这些分类在数据采集和应用中都是十分重要的信息,通常在OSM展示中依靠分类进行信息展示,而名称、地址、坐标在OSM展示和检索作为基础信息来使用。而兴趣是一个非常主观性非常强的词语,在特定的情况下例如用户想发一封电子邮件的时候,电话远远没有邮箱地址有趣。所以POI在不同使用场景下,对POI数据有不同需求,当一个POI数据平台提供一系列接口和数据输出的时候必须考虑不同场景下用户的需求和数据特点。

通常我们将POI的信息划分为基础信息和详情信息,随着社会的发展,LBS、O2O服务相继出现,用户的需求也在不断演化:

以前我们在网上搜索全聚德在北京有几个店,那个离自己最近,如何换乘地铁或公交,这时候地图是用来寻址规划路线的;

现在我们直接搜索某个区域有什么店铺,那个评分更高服务更好,招牌菜是否符合口味,甚至直接团购下单,现在地图是为了生活服务的;

这时候我们发现POI包含的信息演化包含了三个部分:

1. 基础信息:名称、地址、坐标、别名、电话、分类等

2. 详情信息:评分、菜单、价格、评论、团购信息、营业时间、图片等垂直行业信息。

3. 挖掘信息:营业状态、可信度等挖掘产生的数据

有了第1部分我们可以提供基础的检索服务,可以根据用户输入的名称或者当前位置检索到需要的特定类型的POI信息,完成用户的搜索需求;而第2部分可以优化一定场景下的用户体验或者提供高附加值的服务;第3部分数据优化用户体验,避免用户流失。

当然,在地图上POI可能不是一个点,而地图上点也未必是一个POI,如一个步行街、一片海滩又或者两条铁路的交叉口。通常人们会将步行街或者海滩这些区域简化为一个点也就是POI,而铁路的交叉口在地图上可能呈现一个点,可实际上并非一个POI或者有价值的POI,因此,地图上的点和POI实际并非一个概念,虽然我们通常将POI映射为一个点。

地图数据的最终愿景是复刻这个世界,而POI则是这个愿景的基石。

2.百度地图、高德地图、腾讯地图POI数据结构

百度地图、高德地图、腾讯地图餐饮POI内容结构及获取接口 
百度地图数据结构,其他数据结构请点链接,其中百度地图有对应的获取POI接口

{
    "acc_flag":0,
    "addr":"鲁谷路台湾街内",
    "address_norm":"[北京市(110000)|CITY|0|][石景山区(110107)|AREA|0|][鲁谷路()|ROAD|1|]台湾街内",
    "admin_info":{
        "area_id":110107,
        "area_name":"石景山区",
        "city_id":110000,
        "city_name":"北京市"
    },
    "alias":[
        "很久以前羊肉串",
        "很久以前羊肉串(台湾街店)"
    ],
    "aoi":"八宝山;鲁谷",
    "area":1550,
    "area_name":"北京市石景山区",
    "biz_type":0,
    "brand_id":null,
    "catalogID":0,
    "cla":[
 
    ],
    "click_flag":0,
    "detail":1,
    "diPointX":1294045008,
    "diPointY":482521137,
    "di_tag":"羊肉串 美食 中餐馆 餐馆",
    "dis":-1,
    "dist2route":0,
    "dist2start":0,
    "ext_display":null,
    "ext_type":4,
    "f_flag":8,
    "father_son":0,
    "flag_type":"257",
    "geo":"1|12940450.08,4825211.37;12940450.08,4825211.37|12940450.08,4825211.37;",
    "geo_type":2,
    "name":"很久以前羊肉串(台湾街店)",
    "navi_update_time":1556265632,
    "navi_x":"0",
    "navi_y":"0",
    "new_catalog_id":"010100",
    "poiType":0,
    "poi_click_num":0,
    "poi_profile":0,
    "primary_uid":"16902131565075987938",
    "prio_flag":32,
    "route_flag":0,
    "show_tag":[
 
    ],
    "status":1,
    "std_tag":"美食;中餐厅",
    "std_tag_id":"1002",
    "storage_src":"api",
    "tag":"羊肉串 <font color="#c60a00">美食</font> 中餐馆 餐馆",
    "tel":"13691209204",
    "ty":2,
    "uid":"cf9b01891c6db6fbf60e7731",
    "view_type":0,
    "x":1294045008,
    "y":482521137
}

3.POI数据获取

3.1 通过软件获取

EasyPoi有百度地图,高德地图,腾讯地图的POI获取软件,需要申请对应的appKey才能使用,请确保有申请appKey在进行使用
EasyPoi腾讯地图版,一个简单高效的腾讯地图poi数据查询工具
在这里插入图片描述
在这里插入图片描述

下载方式

天翼云盘下载地址(无提取码):https://cloud.189.cn/t/RbEFrafiI7Fb
百度网盘下载地址:https://pan.baidu.com/s/1bMu15Iyi4n0DRHstqhBtWQ提取码:6688

3.2腾讯地图-通过接口获取

腾讯地图-矩形范围(屏幕视野内)搜索
在这里插入图片描述
在这里插入图片描述

3.3 百度地图-通过接口获取

使用百度地图api采集兴趣点数据,因为没有百度的ak码,所以该方法暂未测试
在这里插入图片描述

返回参数:
json数据格式如下:

{
    "status":0,
    "message":"ok",
    "total":228,
    "results":[
        {
            "name":"辽中县新华医院",
            "location":{
                "lat":41.518185,
                "lng":122.743932
            },
            "address":"北一路57号",
            "street_id":"4a25f3d22e0206b428201a39",
            "telephone":"(024)62308120",
            "detail":1,
            "uid":"4a25f3d22e0206b428201a39"
        }
        ……
}    
3.4 前端获取兴趣点:

百度地图、高德地图、腾讯地图餐饮POI内容结构及获取接口 
百度地图获取POI接口测试可用,高德和腾讯目前测试不可用
在这里插入图片描述

4.腾讯地图-关键字检索

普通关键字检索
在这里插入图片描述

5.腾讯地图-前端-经纬度反解析地址

前端通过经纬度反地址解析
在这里插入图片描述

6.腾讯地图-前端-常用地名反解析地址

常用地名反解析地址
在这里插入图片描述

7.腾讯地图-前端-计算某点距离最近兴趣点的位置

腾讯地图-效用函数示例
计算某一个点距离最近兴趣点的位置
在这里插入图片描述

8.腾讯地图-后端-经纬度反解析地址

JAVA通过经纬度调用腾讯地图API获取详细地址
重要的是调用地址,使用哪种http工具调用都可以,该地址调用不限于后端,推荐后端调用更合适
String hsUrl = “https://apis.map.qq.com/ws/geocoder/v1/?location=”+lat+","+lng+"&key="+key+"&get_poi=1";
在这里插入图片描述
腾讯地图-后端-经纬度反解析地址,有以下几种模式,请按需选择
在这里插入图片描述

在这里插入图片描述
官方文档-经纬度反解析地址

9.腾讯地图-后端-按城市统计结果

该地址调用不限于后端,推荐后端调用更合适,有以下几种调用模式,请按需选择
在这里插入图片描述

按城市统计结果
在这里插入图片描述
官方文档-按城市统计结果

10.iconfont矢量图标获取

兴趣点图标可以从以下网址获取: iconfont

11.adcode编码数据表

全国省市区编码数据SQL - 省市区
在这里插入图片描述

12.引申-地图兴趣点聚合算法的探索与实践

地图兴趣点聚合算法的探索与实践
在这里插入图片描述

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐