37

实用工具|零代码实现高德地图 POI 数据下载

 3 years ago
source link: https://zhuanlan.zhihu.com/p/394678969
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

实用工具|零代码实现高德地图 POI 数据下载

上海市新能源汽车公共数据采集与监测研究中心 数据分析师


v2-1e2128c2041e3fe10dc42207728eb8fc_720w.jpgv2-a0c3cbd0fb04ff9fc523becbbff14735_720w.jpgv2-52a70f9a624f9b4e621951b793752cc3_720w.jpgv2-1707f722741f34340c9d6cd88022e221_720w.jpg

1 工具获取方式

点击下面链接,即可获取高德地图POI数据下载工具的下载地址。

2 工具介绍

高德地图POI数据下载工具(下文称该工具)是一款能够让用户在不写代码的前提下实现高德地图POI数据批量下载的工具软件。

该工具基于高德地图API中的搜索POI接口并引入数据结构中的四叉树编码模型来实现POI数据快速且稳定的获取。具体的原理可以参考下面这篇文章。

高德地图POI数据下载工具的特点有:

  • 高效。该工具引入数据结构中的四叉树编码模型来提高POI数据的下载效率。四叉树模型能够动态识别POI较多的区域并分配更多的计算资源,实现计算资源的动态平衡,从而实现提高下载效率的目的。
  • 抗干扰性强。该工具支持断点下载,将一个完整的POI下载动作拆分成两个独立的步骤,每个步骤完成后都会自动保存数据及日志,避免发生意外情况后需要重新开始计算。
  • 免费。该工具目前所有的功能都是免费。

3 工具使用步骤

利用该工具实现高德POI数据下载需要执行3个动作

  • 注册高德地图API密钥并导入工具
  • 建立四叉树索引
  • 执行高德POI下载

3.1 注册高德地图API密钥并导入工具

该工具利用用户自己申请的高德地图API密钥进行POI数据下载,因此使用该工具的前提就是注册成为高德地图API的开发者并成功申请密钥。高德地图API的网址是: 高德地图API注册页面

下图为注册界面

注册成功后,进入应用管理平台,并在我的应用中点击创建新应用按钮(下图右上角),根据需要填写应用名称以及应用类型

应用创建成功后,在该应用栏中点击添加按钮(下图红色框标识)。

根据需要输入Key名称,服务平台需要选择Web服务

双击打开高德地图POI数据下载工具,点击高德地图API密钥按钮(下图红色框标识)可以进入密钥导入界面。

  • 如果在第一个文本框中出现尚未添加高德地图API密钥字样,则说明还没有将密钥导入工具,需要将密钥导入工具。
  • 如果在第一个文本框中出现密钥值,则说明已经将密钥导入工具,不需要再次导入。

将上一步中申请的高德地图API密钥填入红色框标识的文本框中,并点击蓝色箭头标识的添加按钮完成密钥导入动作。

当出现如下图中红色框标识的弹窗则代表高德地图API密钥导入成功。另外,之后每次进入密钥导入界面,蓝色框中的文本框都会显示当前正在使用的密钥。

3.2 建立四叉树索引

点击选项卡中的①-建立四叉树索引按钮(下图红框标识)

矩形范围文本框(下图红框标识)中输入POI数据的外接矩形的空间范围。空间范围的格式是【最小经度】+【最大经度】+【最小纬度】+【最大纬度】,输入坐标的坐标系必须是GCJ-02。

这边也提供了小工具来实现矩形范围框选的工作,点击下图红色框标识的网址打开矩形范围框选工具

下图为矩形范围框选工具

点击工具中的开始框选按钮(下图红色框标识),可以开始执行矩形范围框选动作

在地图中框选想要下载的POI数据的矩形范围,如下图所示框选了北京日坛公园周边的区域。完成框选动作后文本框(下图蓝色框标识)会出现刚刚框选范围的坐标值。

复制上面的坐标值到矩形范围文本框中(下图红色框标识)

点击执行按钮(下图红色框标识),开始四叉树索引建立。

出现下图红色框标识的弹出框,说明四叉树索引建立完毕。

四叉树索引数据自动保存在下图红色框标识的地址中

3.3 执行高德POI下载

点击选项卡中的②-执行高德POI下载按钮(下图红框标识)

点击读取文件按钮(下图红框标识),并在弹出的文件选择对话框中选择上一步生成的四叉树索引文件

当出现如下图所示的界面时,则为成功读取四叉树索引文件

下一步需要在下图红框标识的三个单选按钮中选择POI数据下载的速度。下载速度可以分为正常速度、稳定下载(未认证)、稳定下载(已认证)三种,具体意义是:

  • 正常速度。执行速度是每1秒执行1次下载请求,适用于已经开通企业认证或POI下载任务较小的情况(较小的定义是单个任务小于100个多边形)。值得注意的是如果下载任务较大且选择了正常速度,可能会出现高德地图API密钥限额用尽的情况,最终导致下载任务出错。
  • 稳定下载(未认证)。执行速度是每54秒执行1次下载请求,适用于已注册高德地图API密钥但是未开通个人或企业认证的的情况。选择稳定下载(未认证)后即使没有开通个人或企业认证也可以平稳运行不会出现密钥限额用尽的情况。
  • 稳定下载(已认证)。执行速度是每4秒执行1次下载请求,适用于已经开通高德地图API个人开发者认证的情况。选择稳定下载(已认证)后已开通个人开发认证的可以平稳运行不会出现限额用尽的情况。

点击执行转换按钮开始POI数据下载,当出现类似下图红框标注的状态信息时,代表POI下载任务已经在进行中,需要耐心等待任务完成

当出现下图所示的POI数据下载完成弹窗,说明POI下载任务已经完成,当前任务下载的POI数据自动保存在下图红框标识的地址中。

下图为北京日坛公园周边的POI数据

下图为POI数据的地图可视化效果

3.4 如发生意外情况,支持断点下载

如果在执行高德POI下载的过程中出现意外导致下载中断,该工具支持断点下载,具体步骤为:

  1. 输出断点之前已下载的POI数据
  2. 找到尚未执行下载的四叉树数据并完成下载
  3. 合并两份POI数据

(1) 输出断点之前已下载的POI数据

首先,通过状态栏找到断点之前下载任务的中间数据文件夹地址(下图红框标识)。

点击选项卡中的③-输出高德POI数据按钮(下图红框标识)。

点击读取文件按钮(下图红框标识),并在文件弹出框中找到中间数据文件夹地址

点击执行输出按钮(下图红框标识),当出现如下图的弹窗则说明POI数据输出完成。

POI数据输出的地址如下图红框标注。值得注意的是,这边输出的POI数据是断点之前已下载的POI数据

(2) 找到尚未执行下载的四叉树数据并完成下载

通过状态栏找到断点之前尚未执行下载的四叉树数据地址(下图红框标识)。

②-执行高德POI下载功能界面中点击读取文件按钮(下图红色框标注),并找到上一步中的尚未执行下载的四叉树数据地址。

完成上述操作之后就进入了正常的POI下载任务,这边下载的POI数据是断点之前尚未执行下载的

(3)合并两份POI数据

待POI数据下载完成后,合并上述两份数据就得到了一份完整的POI数据。

4 工具下一步开发计划

  1. 支持指定类别下载。部分用户可能只需要特定几个类别的POI数据并不需要全量POI数据。为满足这类用户的需求,工具下一步计划开发指定类别下载的功能,用户可以通过点选的方式来获取自己需要的POI数据。
  2. 提高断点下载的易用性。目前工具断点下载的功能操作较为复杂,下一步计划简化断点下载的操作,提高工具的易用性。
  3. 支持多密钥下载。目前工具仅支持单个高德地图API密钥的下载,这会限制下载速度以及单日下载限额。下一步计划开发支持多密钥轮询的POI下载功能,提高下载效率。

https://www.zhihu.com/people/shi-da-lao-si-ji (二维码自动识别)


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK