菜鸟笔记
提升您的技术认知

python:提取经纬度位置信息-ag真人游戏

业务上常常需要获知给定经纬的具体信息,如该点位于哪个省、哪个城市、哪个区。百度给开发者提供了百度地图api,可以让我们轻易获取经纬度的省市区等信息。

若想通过一个给定的经纬度,获取其省市区等信息,只需两步:

  • 1、申请百度ak

点击链接:tp://lbsyun.baidu.com/index.php?title=jspopular/guide/introduction,即可申请。具体申请方法不做赘述,网上教程很多。

  • 2、使用百度ak

使用方法也很简单,只需使用requests包,调用百度api,指定ak即可:

import requests
items = {'location': '31,117', 'ak': '你所申请的ak', 'output': 'json'}
res = requests.get('http://api.map.baidu.com/geocoder/v2/', params=items)
res.json()

运行结果如下图:

可以看到,从百度api获取的位置信息还是很丰富的,我们可以从这个json格式的结果中,提取我们想要的各种信息。

如果你觉得上面的步骤太麻烦,不想去自己申请百度ak,也不想自己写请求去调用百度api,那么还有一个更简单的方法:

我把上面的步骤封装成了一个包,你可以点击下面的连接下载:

https://download.csdn.net/download/oyezhou/10623838

使用方法很简单:

  • 1、将该包放在你的python环境目录或者当前脚本目录下
  • 2、导入该包
from baidumapapi.locatebylatlng import location
  • 3、指定经纬度
loc = location(117,31)

指定经纬度时,同样也支持使用你自己申请的ak:

loc = location(117,31, ak='xxxxxxxxxxxxx')
  • 4、提取结果
print(loc.country(),loc.province(),loc.city(),loc.district())
# 输出结果:
# 中国 安徽省 安庆市 桐城市

 

网站地图