高德上面有个poi检索,相信很多人都非常感兴趣。

奈何他没有给出示例代码,不想华为云的语音转换各种示例代码很完整,我自己写一个作为参考拿来看看

# 本程序可以完成的任务是:输入一个多边形区域可以检索该区域内的所有店面并保存下来
import json,time,requests
#定义获取poi函数
# 函数get_poi 通过输入变量polygon来获取指定多边形以内的全部店面信息,输入值:polygon 输出值:poi组成的out列表
def get_poi(polygon):url_base = 'https://restapi.amap.com/v5/place/polygon?key={0}&polygon={1}&types=061100&show_fields=business&page_size=25&page_num={2}'key='***填写自己申请的key***'page_num = 1f = ['name', 'id' ,'type', 'cityname', 'address', 'business']#-----------以下开始核心功能-----------#开始数据获取并写入到out中while page_num <=100:url = url_base.format(key,polygon,page_num)response = requests.get(url)#获取信息上线每天不能高于3万次data = json.loads(response.text)pois_count = int(data['count'])p = data['pois']for poi in p:line = []for i in f:if 'tel' not in poi['business'].keys():continueelif i != 'business':line.append(poi[i])else:line.append(poi['business']['tel'])out.append(line)page_num +=1if pois_count ==0:  breakreturn out def write_in_txt(out):               F = ['店名' , 'ID' , '经营类型', '地区', '地址', '电话']#删除out列表中的空列表out_1 = list(filter(None, out))# 开始写入文本timemark = str(time.strftime('%Y%m%d%H'))#写入文本功能开始output = open('D:/高德地图门店数据_{0}_{1}.txt'.format(timemark,(out_1[0])[3]), 'wb')title = '\t'.join(F)+'\n'output.write(title.encode('utf8'))for l in out_1:output.write(('\t'.join(l) + '\n').encode('utf8'))output.close()
#-----------核心功能结束-----------
#    print('本次采集已结束!')#此行未显示出来print('本次共采集:{0}条信息,其中无电话信息已自动删除,具体数据依得到实际数据为准'.format(len(out_1)))#此行未显示出来
#循环翻页执行while True: print('欢迎使用通过输入polyline(高德坐标集合)')polygon = input('输入Q退出\n请输入\n')out = []if polygon in ['Q','q']:print('正在退出...')time.sleep(5)breakget_poi(polygon)    if len(out) == 0:print('本区域无门店可以检索')continueelse:write_in_txt(out)

里面还有很多可以优化的,这个是我做测试的版本,功能也算完善了。

需要申请一下自己的key是webAPI一定要注意,调用的是多边形检索 这个接口的数量。控制好调用频率不要超额了。

可以实现的功能:

手动输入两个坐标点,或者坐标合集点,检索区域内的poi数据。要输入的点数量有限不能无限制,测试了很多次也没有发现是多少限制,反正是两个点  四个点  都可以,多点的话最后的那个点要和第一个点相同,不然无法操作。仍需改进的代码块,还需多多升级,不够完善

以高德poi为例手动设定多边形区域检索poi实操案例相关推荐

  1. apache poi使用例_GitHub - cooker/poi-examples: apache poi 使用案例

    POI 使用案例 OLE 2文档的POIFS POIFS是POI中最古老,最稳定的部分.这是我们的OLE 2复合文档格式到纯Java的移植.它同时支持读写功能.根据定义,我们用于二进制(非XML)Mi ...

  2. apache poi使用例_使用java Apache poi 根据word模板生成word报表例子

    [实例简介] 使用java Apache poi 根据word模板生成word报表 仅支持docx格式的word文件,大概是word2010及以后版本,doc格式不支持. 使用说明:https://b ...

  3. 【高德地图API】从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索

    原文地址为: [高德地图API]从零开始学高德JS API(四)搜索服务--POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索 摘要:地图服务,大家能想到哪些?POI搜素,输入提示,地址 ...

  4. Py:利用pyautogui实现自动将pdf文件(需手动设定pdf总页数)自动翻页并截取另存为图片形式,或自动隔0.1秒自动截笔记本全屏保存到指定文件夹

    Py:利用pyautogui实现自动将pdf文件(需手动设定pdf总页数)自动翻页并截取另存为图片形式,或自动隔0.1秒自动截笔记本全屏保存到指定文件夹 目录 实现步骤和结果 核心代码 实现步骤和结果 ...

  5. 国内地图数据纠偏实践:以高德地图为例

    背景 在进行地图开发过程中,我们一般能接触到以下三种类型的地图坐标系: 1.WGS-84原始坐标系,一般用国际GPS纪录仪记录下来的经纬度,通过GPS定位拿到的原始经纬度,Google和高德地图定位的 ...

  6. apache poi使用例_4.Apache POI使用详解

    转载自:http://www.cnblogs.com/lukelook/p/8660798.html 一.POI结构与常用类 1.POI介绍 Apache POI是Apache软件基金会的开源项目,P ...

  7. 如何用Apache POI操作Excel文件-----如何用Apache POI 画一个离散图

    有的时候,我们需要Excel中的数据,通过一个图画,可视化的表现出来. 那么这个时候,应该如何做呢?现在就借花献佛,以Apache POI自己提供的一个例子为例,给大家演示一下POI的API 如何画图 ...

  8. Apache POI和EasyExcel 第二集:Apache POI的基本Excel写入(分为03版的xls和07版的xlsx)

    Apache POI和EasyExcel 第二集:Apache POI的基本Excel写入(分为03版的xls和07版的xlsx) 一.导入依赖 老样子使用Maven,比较方便,一个dependenc ...

  9. java poi读取word中附件_java用poi实现对word读取和修改操作

    java编程要实现对word的操作没有vb那种编程语言来得容易,得借助一些开源组件,其中就包括jacob.poi等, 而poi应用得最为广泛,对word2003和2007的读和写word操作都十分方便 ...

最新文章

  1. libev源码解析——定时器原理
  2. matlab 自定义对象,面向对象:MATLAB的自定义类 [MATLAB]
  3. 整体思考自动化测试发展和价值回报
  4. 【UE4】二十三、UE4笔试面试题
  5. 微服务网关 Kong 快速上手攻略
  6. 关键词匹配(Ac自动机模板题)
  7. STL容器汇总(二)
  8. C++trie类的实现(附完整源码)
  9. 解决pycharm安装包过程出现的问题:module 'pip' has no attribute 'main'
  10. 语言nomogram校准曲线图_R语言实现Cox模型校准度曲线绘制
  11. 《Python Cookbook 3rd》笔记(2.3):用Shell通配符匹配字符串
  12. 软工 课堂作业:选出一个整数组中最大子数组
  13. 传递集合对象_【Java学习笔记(九)】之集合的要点介绍
  14. 外贸必备——各国常用搜索引擎
  15. android如何局域网通信,android局域网怎么通信
  16. Adobe Flash Professional CS5挂起挂起,安装不成功
  17. Periodic-table
  18. 《云计算与虚拟化分析》_2章:虚拟化技术
  19. 搜集了20多款“数据库”,打包送你!
  20. MATLAB中利用cftool导出代码实现一张图中拟合多条平滑曲线

热门文章

  1. protues仿真微处理器8086实现交通灯
  2. 收藏的JAVA面试题大全(http://www.blogjava.net/bibi/archive/2006/07/18/58701.html)
  3. PHP加载TTF或TTC字体文件
  4. 在vue3 中使用echarts
  5. leetCode100题及答案(转载侵权删)
  6. spark任务调度——梳理龙骨
  7. 使用Visio2003绘制E-R图
  8. 薄型开关将缩小您的机械键盘
  9. c语言中的简单动画(带有源码)
  10. ADS仿真,3db均衡器是否可以补偿3db插入损耗?