日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

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

Python利用百度地圖獲取兩地距離(附demo)

瀏覽:268日期:2022-06-14 15:26:04
目錄百度地圖開放平臺介紹需要用到的API編寫Python程序1.獲取對應地點的經緯度2.獲取兩地之間的距離3.合并函數調用4.進行簡單的功能測試5.對Excel中的批量地點計算距離百度地圖開放平臺

進入百度地圖開放平臺后,登陸用戶,點擊上方的控制臺,按照提示進行激活后創建服務端類型的應用,應用名任意設置,其中白名單校驗不做任何限制可以填寫0.0.0.0/0。創建成功后畫面應如下圖所示,其中訪問應用AK)即途中紅色方框圈起來的部分一定要注意不要隨意泄漏,后面需要使用到,這是后面訪問需要用到的一串口令。

Python利用百度地圖獲取兩地距離(附demo)

介紹需要用到的API

本項目中所有使用的API均為Web服務API,官方開發文檔。

1.地點檢索服務

地點檢索服務(又名Place API)是一類Web API接口服務;服務提供多種場景的地點(POI)檢索功能,包括城市檢索、圓形區域檢索、矩形區域檢索。開發者可通過接口獲取地點(POI)基礎或詳細地理信息。

我們利用這個API來獲取指定地點的經緯度(lat, lng)兩個參數。

2.批量算路服務

批量算路服務(又名RouteMatrix API)是一套以HTTP/HTTPS形式提供的輕量級批量算路接口,用戶可通過該服務,根據起點和終點坐標計算路線規劃距離和行駛時間,RouteMatrix API V2.0支持中國大陸地區。

我們利用這個API來獲取兩個地點(用經緯度來給出)之間的路線規劃距離。

編寫Python程序

0.需要用到的模塊

requests json1.獲取對應地點的經緯度

將傳入的address通過地點檢索服務得到其經緯度,返回值為經緯度對應的字符串值,中間以逗號隔開,之后跟一個查詢返回狀態,如果查詢失敗,狀態值不為0。

注意將代碼中的AK換成一開始截圖中的AK碼。

def getPosition(address): url = r'http://api.map.baidu.com/place/v2/search?query={}&region=全國&output=json&ak={}'.format(address,AK # 這里是一開始截圖用紅色圈起來的部分 ) res = requests.get(url) json_data = json.loads(res.text) if json_data[’status’] == 0:lat = json_data['results'][0]['location']['lat'] # 緯度lng = json_data['results'][0]['location']['lng'] # 經度 else:print('[ERROR] Can not find {}.'.format(address))return '0,0', json_data['status'] return str(lat) + ',' + str(lng), json_data['status']2.獲取兩地之間的距離

將傳入的兩個地點(以經緯度描述)通過批量算路服務得到之間的路線規劃距離。本范例是以駕車行駛(對應參數為’driving’)的方式來進行計算的。

同樣注意將代碼中的AK換成一開始截圖中的AK碼。

def getDistance(start, end): url = 'http://api.map.baidu.com/routematrix/v2/driving?output=json&origins={}&destinations={}&ak={}'.format(start,end,AK # 這里是一開始截圖用紅色圈起來的部分 ) res = requests.get(url) content = res.content jsonv = json.loads(str(content, 'utf-8')) dist = jsonv['result'][0]['distance']['value'] return dist3.合并函數調用

傳入兩個地點名,返回兩地點距離,當某個地點查詢不到時,返回結果設置為-1。

def calcDistance(startName, endName): start, status1 = getPosition(startName) end, status2 = getPosition(endName) if status1 == 0 and status2 == 0:return getDistance(start, end) else:return -14.進行簡單的功能測試

運行代碼輸出北京成都之間的距離,其單位為米。

Python利用百度地圖獲取兩地距離(附demo)

5.對Excel中的批量地點計算距離

將data.xlsx文件中的地點全部讀取并計算出距離,將結果保存到本地的result.xlsx文件中,其中我們將距離的單位設置為千米。主模塊代碼如下:

if __name__ == '__main__': data = pd.read_excel('data.xlsx') res = [] for i in range(0, len(data)):startName = data.iloc[i, 0]endName = data.iloc[i, 1]dist = calcDistance(startName, endName)res.append([startName, endName, dist / 1000]) pd.DataFrame(res).to_excel('result.xlsx',header=['起點', '終點', '距離'],index=None,encoding='utf-8' )

其中data.xlsx文件的內容為:

Python利用百度地圖獲取兩地距離(附demo)

對應的輸出result.xlsx文件內容如下:

Python利用百度地圖獲取兩地距離(附demo)

附錄

# 本次整體的源代碼AK = '修改為你自己的AK碼即可使用'import pandas as pdimport requestsimport jsondef getPosition(address): url = r'http://api.map.baidu.com/place/v2/search?query={}&region=全國&output=json&ak={}'.format(address,AK # 這里是一開始截圖用紅色圈起來的部分 ) res = requests.get(url) json_data = json.loads(res.text) if json_data[’status’] == 0:lat = json_data['results'][0]['location']['lat'] # 緯度lng = json_data['results'][0]['location']['lng'] # 經度 else:print('[ERROR] Can not find {}.'.format(address))return '0,0', json_data['status'] return str(lat) + ',' + str(lng), json_data['status']def getDistance(start, end): url = 'http://api.map.baidu.com/routematrix/v2/driving?output=json&origins={}&destinations={}&ak={}'.format(start,end,AK # 這里是一開始截圖用紅色圈起來的部分 ) res = requests.get(url) content = res.content jsonv = json.loads(str(content, 'utf-8')) dist = jsonv['result'][0]['distance']['value'] return distdef calcDistance(startName, endName): start, status1 = getPosition(startName) end, status2 = getPosition(endName) if status1 == 0 and status2 == 0:return getDistance(start, end) else:return -1if __name__ == '__main__': data = pd.read_excel('data.xlsx') res = [] for i in range(0, len(data)):startName = data.iloc[i, 0]endName = data.iloc[i, 1]dist = calcDistance(startName, endName)res.append([startName, endName, dist / 1000]) pd.DataFrame(res).to_excel('result.xlsx',header=['起點', '終點', '距離'],index=None,encoding='utf-8' )

到此這篇關于Python利用百度地圖獲取兩地距離的文章就介紹到這了,更多相關Python 百度地圖獲取兩地距離 內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产一区日韩一区| 青青草91久久久久久久久| 日韩av在线播放网址| 国产精品外国| 久久视频国产| 国产成人精品一区二区三区在线| 亚洲网站视频| 日韩成人高清| 丝袜美腿诱惑一区二区三区| 美女在线视频一区| 91九色综合| 奇米777国产一区国产二区| 日韩中文欧美在线| 亚洲一区二区三区中文字幕在线观看| 国产欧美日韩视频在线| 综合欧美亚洲| 最新亚洲国产| 伊人国产精品| 亚洲精品国产偷自在线观看| av在线资源| 91欧美国产| www.com.cn成人| 久久精品一本| 天堂8中文在线最新版在线| 动漫av一区| 欧美sss在线视频| 日韩精品欧美激情一区二区| 波多野结衣久久精品| 神马日本精品| 黄色成人在线网址| 亚洲三区欧美一区国产二区| 亚洲精选av| 国产精品115| 精品网站aaa| 久久伦理在线| 婷婷精品在线观看| 精品国产三区在线| 成人免费电影网址| 亚洲一区激情| 欧美a一区二区| 婷婷久久一区| 国产亚洲欧美日韩在线观看一区二区 | 国产毛片久久| 免费看久久久| 亚洲精品2区| 伊人精品久久| 精品欧美一区二区三区在线观看| 夜夜嗨网站十八久久| 欧美日韩视频免费看| 伊人网在线播放| 美日韩精品视频| 中文在线а√天堂| 欧美一区精品| 亚洲女人av| 日韩欧美一区免费| 久久国产精品免费一区二区三区 | 亚洲一区国产一区| 日韩不卡一区二区三区| 欧美日韩国产v| 六月丁香综合在线视频| 最近国产精品视频| 欧美日韩一区二区综合| 国产美女久久| 午夜久久av| 欧美在线资源| 久久久久久免费视频| 欧美国产专区| 日韩欧美激情| 伊人久久大香伊蕉在人线观看热v| 欧美日韩在线观看首页| 国产欧美日韩在线一区二区 | 国产精品theporn| 亚洲欧美日本国产| 亚洲免费一区二区| 激情综合网站| 五月天久久久| 欧美日韩在线播放视频| 日韩电影免费网址| 亚洲深夜视频| 国产videos久久| 日韩欧美精品| 欧美日韩在线观看视频小说| 亚洲www免费| 久久香蕉国产| 99精品在线观看| 久久一区二区三区电影| 麻豆久久一区| 麻豆网站免费在线观看| 黄色网一区二区| 精品久久99| 在线成人动漫av| 久久国产精品亚洲77777| 亚洲色图网站| 国产精品一级| 欧美日韩在线观看视频小说| 久久精品亚洲欧美日韩精品中文字幕| 久久蜜桃精品| 噜噜噜躁狠狠躁狠狠精品视频 | 日韩在线看片| 电影天堂国产精品| 久久网站免费观看| 日韩影院免费视频| 欧美视频二区| 日韩av二区| 日韩午夜一区| 欧美aⅴ一区二区三区视频| 色婷婷色综合| 亚洲一区二区三区四区五区午夜| 日韩黄色在线观看| www成人在线视频| 日韩影片在线观看| 国产伦精品一区二区三区视频| 99久久夜色精品国产亚洲1000部| 久久国产三级| 日韩激情视频网站| 综合激情在线| 欧美亚洲精品在线| 日本精品影院| 黄毛片在线观看| 久久精品国产福利| 欧美日一区二区在线观看| 99视频一区| 久久久精品久久久久久96 | 欧美有码在线| 亚洲欧洲免费| 日韩在线卡一卡二| 亚洲一区免费| 日韩久久99| 国产日产一区| 日韩在线一区二区| 亚洲欧美日韩国产一区| 午夜电影亚洲| 91精品91| 欧美日韩国产在线观看网站| 999久久久免费精品国产| 日韩精品首页| 国产精品试看| 欧美在线91| 91九色综合| 麻豆精品在线视频| 97精品中文字幕| 亚洲午夜精品久久久久久app| 久久中文字幕av一区二区不卡| 婷婷激情综合| 国产日产一区| 国产成人免费| 激情久久中文字幕| 免费观看久久久4p| 清纯唯美亚洲综合一区| 日韩精品亚洲专区| 国产亚洲欧美日韩在线观看一区二区| 久久国产三级| 捆绑调教日本一区二区三区| 日韩国产激情| 欧美女激情福利| 亚洲资源在线| 国产传媒av在线| 成人av动漫在线观看| 日韩在线观看中文字幕| 国产a亚洲精品| 免费久久99精品国产| 国产精成人品2018| 欧美丝袜一区| 日本视频一区二区| 久久在线视频免费观看| 麻豆国产一区| 日韩精品一卡二卡三卡四卡无卡| 国产毛片久久久| 亚洲一区资源| 国产日韩欧美三级| 亚洲精品小说| 国产美女高潮在线| 青青国产91久久久久久| 亚洲成人精品| 欧美成人精品一级| 蜜臀av一区二区在线免费观看| 精品三级av在线导航| 午夜精品影视国产一区在线麻豆| 日本在线高清| 国产精品夜夜夜| 中文字幕av一区二区三区人| 涩涩av在线| 麻豆国产欧美日韩综合精品二区| 亚洲成人二区| 四虎8848精品成人免费网站| 欧美亚洲综合视频| 首页国产欧美日韩丝袜| 久久中文字幕av| 亚洲一级少妇| 成人av三级| 成午夜精品一区二区三区软件| 久久国际精品| 国产精品视频首页| 国产探花在线精品一区二区| 国产伦一区二区三区| 日韩国产精品久久久| 日韩成人一级| 国产乱码精品一区二区亚洲| 夜夜精品视频| 老牛国产精品一区的观看方式|