久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

基于python實(shí)現(xiàn)地址和經(jīng)緯度轉(zhuǎn)換

瀏覽:4日期:2022-07-25 09:56:31

中文領(lǐng)域:

指的是提取境內(nèi)地址的經(jīng)緯度,的主要調(diào)用的是百度API。中間經(jīng)歷了一些波折,剛開始直接使用網(wǎng)上代碼debug半天都不行,才發(fā)現(xiàn)要隨時(shí)跟進(jìn)官方改動(dòng),使用別人的API一定要看說明書啊!

首先需要從百度地圖平臺上注冊一個(gè)AK(在這之前要注冊百度的開發(fā)者身份,免費(fèi)),進(jìn)入其地理編碼網(wǎng)址:

http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding

頁面:

基于python實(shí)現(xiàn)地址和經(jīng)緯度轉(zhuǎn)換

由于我們是要從地址轉(zhuǎn)換經(jīng)緯度,因此看地理編碼就可以了。

基于python實(shí)現(xiàn)地址和經(jīng)緯度轉(zhuǎn)換

官網(wǎng)給出了服務(wù)文檔(千萬要看),因?yàn)榕廊〉刂窌r(shí)需要提供url,這個(gè)url必須和官方提供的一致。這里需要注意兩點(diǎn):

1. 網(wǎng)上有的代碼里給出的是v2,但是現(xiàn)在已經(jīng)更新到了v3

2. 中文需要編碼,使用urllib.request庫里的quote默認(rèn)的就行,但是可能在別的網(wǎng)址中會(huì)使用非大眾的漢字編碼方式,這個(gè)時(shí)候可以查一下相應(yīng)的編碼并encode一下

import jsonfrom urllib.request import urlopen, quoteimport requestsdef getlnglat(address): url = ’http://api.map.baidu.com/geocoding/v3/’ output = ’json’ ak = ’你的AK’ # 百度地圖ak,具體申請自行百度,提醒需要在“控制臺”-“設(shè)置”-“啟動(dòng)服務(wù)”-“正逆地理編碼”,啟動(dòng) address = quote(address) # 由于本文地址變量為中文,為防止亂碼,先用quote進(jìn)行編碼 uri = url + ’?’ + ’address=’ + address + ’&output=’ + output + ’&ak=’ + ak +’&callback=showLocation%20’+’//GET%E8%AF%B7%E6%B1%82’# req = urlopen(uri)# res = req.read().decode() 這種方式也可以,和下面的效果一樣,都是返回json格式 res=requests.get(uri).text temp = json.loads(res) # 將字符串轉(zhuǎn)化為json lat = temp[’result’][’location’][’lat’] lng = temp[’result’][’location’][’lng’] return lat,lng # 緯度 latitude,經(jīng)度 longitude

結(jié)果:

address=’北京市海淀區(qū)上地十街10號’getlnglat(address)>>(40.05703033345938, 116.3084202915042)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 泊头市| 平武县| 五原县| 平定县| 恩施市| 南江县| 韩城市| 邹城市| 增城市| 漳浦县| 定州市| 英山县| 清水河县| 威宁| 宜阳县| 海晏县| 池州市| 南部县| 冀州市| 都江堰市| 朝阳市| 拉萨市| 温州市| 嘉黎县| 阳原县| 滁州市| 铜陵市| 新干县| 含山县| 太湖县| 高阳县| 湾仔区| 从江县| 德庆县| 无为县| 称多县| 贺州市| 修水县| 法库县| 萨嘎县| 仙游县|