要从Google的Distance Matrix API的JSON响应中提取值并存储到Python DataFrame中,你需要先获取API的响应,然后解析这个响应,并将其转换为DataFrame。以下是详细的步骤和示例代码:
首先,你需要使用Google Distance Matrix API来获取距离和持续时间的数据。这通常涉及到发送一个HTTP请求并接收JSON格式的响应。
使用Python的json
模块来解析API返回的JSON数据。
使用pandas
库来创建一个DataFrame,并将解析后的数据填充进去。
import requests
import pandas as pd
import json
# 假设你已经有了Google Distance Matrix API的URL和你的API密钥
api_url = "https://maps.googleapis.com/maps/api/distancematrix/json"
api_key = "YOUR_API_KEY"
# 设置请求参数
params = {
"origins": "Seattle,WA",
"destinations": "San+Francisco,CA",
"key": api_key
}
# 发送请求并获取响应
response = requests.get(api_url, params=params)
data = response.json()
# 解析JSON响应
try:
# 提取距离和持续时间
distances = data['rows'][0]['elements'][0]['distance']['text']
durations = data['rows'][0]['elements'][0]['duration']['text']
# 创建DataFrame
df = pd.DataFrame({
'Origin': ['Seattle,WA'],
'Destination': ['San Francisco,CA'],
'Distance': [distances],
'Duration': [durations]
})
print(df)
except KeyError as e:
print(f"KeyError: {e}. The structure of the JSON response might have changed.")
except Exception as e:
print(f"An error occurred: {e}")
origins
和destinations
参数。请确保在实际应用中处理好API请求的频率限制和成本问题。
领取专属 10元无门槛券
手把手带您无忧上云