国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

基于python實現地址和經緯度轉換

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

中文領域:

指的是提取境內地址的經緯度,的主要調用的是百度API。中間經歷了一些波折,剛開始直接使用網上代碼debug半天都不行,才發現要隨時跟進官方改動,使用別人的API一定要看說明書啊!

首先需要從百度地圖平臺上注冊一個AK(在這之前要注冊百度的開發者身份,免費),進入其地理編碼網址:

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

頁面:

基于python實現地址和經緯度轉換

由于我們是要從地址轉換經緯度,因此看地理編碼就可以了。

基于python實現地址和經緯度轉換

官網給出了服務文檔(千萬要看),因為爬取地址時需要提供url,這個url必須和官方提供的一致。這里需要注意兩點:

1. 網上有的代碼里給出的是v2,但是現在已經更新到了v3

2. 中文需要編碼,使用urllib.request庫里的quote默認的就行,但是可能在別的網址中會使用非大眾的漢字編碼方式,這個時候可以查一下相應的編碼并encode一下

import jsonfrom urllib.request import urlopen, quoteimport requestsdef getlnglat(address): url = ’http://api.map.baidu.com/geocoding/v3/’ output = ’json’ ak = ’你的AK’ # 百度地圖ak,具體申請自行百度,提醒需要在“控制臺”-“設置”-“啟動服務”-“正逆地理編碼”,啟動 address = quote(address) # 由于本文地址變量為中文,為防止亂碼,先用quote進行編碼 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) # 將字符串轉化為json lat = temp[’result’][’location’][’lat’] lng = temp[’result’][’location’][’lng’] return lat,lng # 緯度 latitude,經度 longitude

結果:

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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 康乐县| 迁安市| 四子王旗| 永寿县| 沾益县| 利辛县| 永德县| 宜昌市| 和林格尔县| 安达市| 涞水县| 来安县| 大名县| 青河县| 南平市| 新干县| 寿光市| 西充县| 陆丰市| 四平市| 郓城县| 原阳县| 邯郸县| 吉林市| 富宁县| 新乡市| 奈曼旗| 延边| 黄梅县| 郯城县| 西林县| 建始县| 政和县| 邢台市| 辰溪县| 广东省| 库尔勒市| 灵台县| 祁东县| 社旗县| 南华县|