高德poi数据下载思路

第二篇博客写个poi点数吧,简单写一下思路。
一、需求:
获取某个中心城区的所有poi点,要素成果直接为shp格式
二、数据源与工具:
高德api,pandas库,pyshp(用来直接生成shp文件)
三、实现步骤:
注意点:
1.本次调用的是高德api矩阵选框,所以api构造需符合矩阵函数。详见高德api:https://lbs.amap.com/api/webservice/guide/api/search。offset为单页个数,最大值为25,回调参数有个count,则该poi点的页码数为:pages = math.ceil(float(dt[‘count’])/25) #math.ceil为页码进一。
在这里插入图片描述
2.由于每次仅能从单一矩阵采集数据900个,所以需要切割矩阵,将其做切割成多个矩阵,写一个类或者函数来实现,核心思路为确定左下右上角范围坐标,切割尺度。本次的范围为1500km2。
3.利用json.cn查看回调的json,确定需要存储的指标,我选取的指标为大类、中类、小类、name、address和timestamp以及location。
4.构造pois字典,按照键值对存放大类和中类,pois={‘交通设施服务’:[‘停车场’,‘公交车站’],‘商务住宅’:[‘楼宇’,‘住宅区’]};
5.坐标切割,遍历调用高德api函数get_datapoi(key,query,loc),参数分别为:key,query(查询字段)和loc(当前坐标);
6.坐标转换及数据清洗,github上提供了坐标转换函数,https://github.com/wandergis/coordTransform_py。数据清洗主要是由于网络不佳造成的try重复采集,所有需要利用到drop.duplicates()函数去重。
7.利用pyshp第三库,将数据生成shp。
在这里插入图片描述
成果:封装写好后,就让它跑吧,福州市中心城区1500km2,大概4个小时能全部下载完,暂时还没想到用处,先放着,做基础数据库,后期做一些设施评价和便利性以及与同类型城市横向对比用。
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值