上一篇我们介绍微博开放平台时说道了通过高德开放平台获取地名地址的坐标,今天我们来说一说怎么使用高德开放平台查询相关关键词的地址坐标,或者采集学校、医院、餐厅、公园、企业等POI的信息。
高德开放平台http://lbs.amap.com提供了接口文档,本文使用的是搜索接口http://lbs.amap.com/api/webservice/guide/api/search,通过配置城市、关键词、POI类型等参数,查询符合条件的POI,返回该POI的名称、类型、地址、经纬度、电话等信息。
(1)首先,根据地名地址关键词查找匹配的POI,进行地名地址空间化。
使用python内置库urllib.request获取url返回的数据,用urllib.parse中的quote进行url编码,因为url中关键词是中文的话url不识别。
上图是程序的主要部分,通过搜索关键字,返回相关POI信息,包括坐标。代码也比较简单,读取csv文本文件中的关键词,通过搜索接口进行查询,返回的内容可以只保留第一个结果,不然就返回第一页对所有结果共20条,然后把返回结果存入csv文件。最后运行该函数。
(2)查询某一类型的所有POI信息
上面的程序只保存了第一页的20条数据,如果我想要某一区域的所有