通過詳細地址信息,調用百度駛入座標系統api,獲得地址的經緯度信息
1、打開百度地圖開放平臺:http://lbsyun.baidu.com/
註冊成爲一名開發者。
2、點擊控制檯,創建應用獲取自己的ak
3、通過在py文件中編寫代碼,填入ak進行調用
# 詳細信息
class MyInfo:
# 根據地址獲取經緯度
def getlnglat(address):
url = 'http://api.map.baidu.com/geocoder'
output = 'json'
ak = 百度AK # 瀏覽器端密鑰
address = quote(address) # 由於本文地址變量爲中文,爲防止亂碼,先用quote進行編碼
uri = url + '?' + 'address=' + address + '&output=' + output + '&ak=' + ak
try:
req = urlopen(uri)
res = req.read().decode()
temp = json.loads(res)
# 緯度
lat = temp['result']['location']['lat']
# 經度
lng = temp['result']['location']['lng']
# 地址查找失敗
if math.isclose(lat,39.910925,rel_tol=1e-5):
lat = None
if math.isclose(lng, 116.413384, rel_tol=1e-5):
lng = None
except Exception as e:
print(e)
lng = None
lat = None
return lng, lat