python+百度地图实现地址转换经纬度

  • 前期准备
  • 安装requests包
  • 在百度地图开放平台申请AK
  • 接下来进入正题
  • 首先, AK使用方法
  • 最后,上代码


前期准备

首先安装需要的库,requests(主要用于获取百度地图API地址)

需要导出的相关结果的话就需要引入pandas、csv库,这里根据自己需要选择即可。

安装requests包

可以使用:

pip install requests

方式安装本次内容主要的包,
其他包也可以通过此方法来安装,这是最简单的方法

在百度地图开放平台申请AK

AK申请链接


python世界经纬度获取 python经纬度包_python世界经纬度获取


进入百度地图开发平台页面以后先进行账号注册登录然后点击“开发文档”

python世界经纬度获取 python经纬度包_python_02


选择LBS云,再点击下图“获取密钥”,进行“傻瓜式”激活流程就可以了!

python世界经纬度获取 python经纬度包_request_03


申请成功后,就可以使用了!!!

接下来进入正题

首先, AK使用方法

直接上图

python世界经纬度获取 python经纬度包_python世界经纬度获取_04


申请成功后,进入控制台按照上图操作”创建应用“

python世界经纬度获取 python经纬度包_爬虫_05


名称自己随便写就行,应用类型就根据自己的实际情况来选择,像anaconda-jupyter是在浏览器打开的,我们就选择浏览器端,启用服务直接全选就行(不用调用每个服务都重新创建应用)

白名单:
浏览器端可以直接写*

其他端,下面也都会有相应提示,实在不懂就问”度娘“

以上操作都完成后,就可以直接复制AK使用了!!!

python世界经纬度获取 python经纬度包_request_06

最后,上代码

下列代码中的URL访问以及API服务信息

import requests

AK = "百度AK"       #  把复制的AK直接粘贴过来就可以了

def change(name):
    url = 'http://api.map.baidu.com/geocoding/v3/?address=%s&output=json&ak=%s'%(name,AK)
    res = requests.get(url)
    if res.status_code == 200:
        val = res.json()
        if val["status"] == 0:
            retval = {'地址':name,'经度':val['result']['location']['lng'],'纬度':val['result']['location']['lat'],'地区标签':val['result']['level'],'是否精确查找':val['result']['precise']}
        else:
            retval = None
        return retval
    else:
        print('无法获取%s经纬度'%name)


if __name__ == '__main__':
	print(change('故宫博物院'))

像我用的是anaconda做相关练习,输入“故宫博物院”

最后输出内容如下:

python世界经纬度获取 python经纬度包_大数据_07