Python呼叫百度API實現批量地址轉經緯度並寫入表格
阿新 • • 發佈:2021-01-11
此文轉載自:https://blog.csdn.net/gjgfjgy/article/details/112443653
Python呼叫百度API實現批量地址轉經緯度並寫入表格
本段程式碼是先將需要轉換經緯度的地址爬取在 ‘地址.csv’ 檔案裡,檔案截圖示例:
程式碼展示
# coding=utf-8
# SPL
# 時間:2020/12/20 21:15
import csv
import requests
import json
import pandas as pd
num=0
y=[]
with open("地址.csv", 'r') as f: #寫入將要轉換的地址的檔案路徑,此處為預設檔案路徑(要先將檔案提前匯入)(注意是csv格式檔案)
r = csv.reader(f, delimiter=',')
for row in r:
print(row[0])
#記得在key=後面填入申請百度地圖開發平臺的key
url = "http://restapi.amap.com/v3/geocode/geo?key=**********&address=" + row[0]
dat = {
'count': "1",
}
r = requests.post(url, data= json.dumps(dat))
s = r.json()
b = s['geocodes']
for j in range(0, 10000):
try:
neirong1 = b[j]
except:
continue
try:
b = neirong1['location']
except :
continue
try:
lon_lat= b.split(',')
lon=float(lon_lat[0])
lat = float(lon_lat[1])
print(lon)
print(lat)
except:
continue
num += 1
print("第" + str(num) + "條地址轉換成功")
y.append([row[0], lon, lat])
result = pd.DataFrame(y)
result.columns = ['地址', '經度', '緯度']
result.to_csv('地址轉經緯度.csv', encoding='utf-8-sig', index=False)
執行結果
轉換成功後生成的表格截圖 _
均為原創,轉載請說明出處