调用百度正逆地理编码 API

某些场景下需要通过不是很明确的地理位置选择或填写省市县,这时候调用百度正逆地理编码API可以很大程度解决这个问题(传入地址越详细,返回信息越准确)
  • Python 调用代码

开发之前首先要从百度地图开放平台获取 key 值 (即下文所用 ak)
http://lbsyun.baidu.com/apiconsole/key/create#/home

import requests

import json

'''

正向地理编码

'''

def geocoding(address):

    request_url = “http://api.map.baidu.com/geocoding/v3/

    ak = “注册的百度 Key”

    request_url = request_url + “?address=” + address + “&output=json&ak=” + ak

    response = json.loads(requests.post(request_url).text)

    '''

    if response:

        print(response[‘result’]['location'])

    '''

    return response[‘result’][‘location’]['lat'], response[‘result’][‘location’]['lng']

'''

逆向地理编码

'''

def reverse_geocoding(lat, lng):

    request_url = “http://api.map.baidu.com/reverse_geocoding/v3/

    ak = “注册的百度 Key”

    request_url = request_url + “?ak=” + ak + “&output=json&location=” + str(lat) + “,” + str(lng)

    response = json.loads(requests.post(request_url).text)

    # response = requests.post(request_url)

    if response:

        print(response[‘result’]['formatted_address'])

  • 机器人调用方法及结果

调用百度正逆地理编码 API