[英]How do I output specific data from a json response?
我對在 python 中使用 API 相當陌生,我正在嘗試創建一個系統來輸出以前賽車比賽的數據。 我已經向 API 發送了請求,但我很難將其發送到 output 一個特定的數據(例如時間、位置)。 當我打印發送的原始 JSON 數據時,我得到了這個。
{
"MRData": {
"RaceTable": {
"Races": [
{
"Circuit": {
"Location": {
"country": "Spain",
"lat": "41.57",
"locality": "Montmeló",
"long": "2.26111"
},
"circuitId": "catalunya",
"circuitName": "Circuit de Barcelona-Catalunya",
"url": "http://en.wikipedia.org/wiki/Circuit_de_Barcelona-Catalunya"
},
"date": "2020-08-16",
"raceName": "Spanish Grand Prix",
"round": "6",
"season": "2020",
"time": "13:10:00Z",
"url": "https://en.wikipedia.org/wiki/2020_Spanish_Grand_Prix"
}
],
"round": "6",
"season": "2020"
},
"limit": "30",
"offset": "0",
"series": "f1",
"total": "1",
"url": "http://ergast.com/api/f1/2020/6.json",
"xmlns": "http://ergast.com/mrd/1.4"
}
}
只是為了掌握 API,我只是試圖 output 一個特定種族的簡單數據,一旦我能做到這一點,我就能夠擴大它和 output 各種數據。 我以為它就像輸入print(data['time'])
一樣簡單(如下所示),但我收到一條錯誤消息:
鍵錯誤:'時間'
我的源代碼:
import requests
response = requests.get("http://ergast.com/api/f1/2020/6.json")
data = response.json()
print (data["time"])
任何幫助表示贊賞!
像這樣...
import json
data = """{
"MRData":{
"xmlns":"http://ergast.com/mrd/1.4",
"series":"f1",
"url":"http://ergast.com/api/f1/2020/6.json",
"limit":"30",
"offset":"0",
"total":"1",
"RaceTable":{
"season":"2020",
"round":"6",
"Races":[
{
"season":"2020",
"round":"6",
"url":"https://en.wikipedia.org/wiki/2020_Spanish_Grand_Prix",
"raceName":"Spanish Grand Prix",
"Circuit":{
"circuitId":"catalunya",
"url":"http://en.wikipedia.org/wiki/Circuit_de_Barcelona-Catalunya",
"circuitName":"Circuit de Barcelona-Catalunya",
"Location":{
"lat":"41.57",
"long":"2.26111",
"locality":"Montmeló",
"country":"Spain"
}
},
"date":"2020-08-16",
"time":"13:10:00Z"
}
]
}
}
}"""
jsonData = json.loads(data)
Races 是一個數組,在這種情況下只有一場比賽,因此您可以將其指定為["Races"][0]
print(jsonData["MRData"]["RaceTable"]["Races"][0]["time"])
如果你有一個平面字典, data['time']
會起作用,但是你有一個嵌套的字典/列表結構,所以:
data["MRData"]["RaceTable"]["Races"][0]["time"]
data["MRData"]
返回另一個字典,它有一個鍵"RaceTable"
。 這個鍵的值又是一個字典,它有一個鍵"Races"
。 這個值是一個種族列表,你只有一個。 比賽再次成為關鍵time
的命令。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.