-1
我是一個非常初學Python的人,我有以下問題:我試圖從下面的示例json文件訪問「videoId」。使用Python訪問嵌套的json字典
{
"kind": "youtube#playlistItemListResponse",
"etag": "\"gMxXHe-zinKdE9lTnzKu8vjcmDI/gdfK_92q5yW4RaDjJ88_b_T00Jg\"",
"pageInfo": {
"totalResults": 14,
"resultsPerPage": 50
},
"items": [
{
"kind": "youtube#playlistItem",
"etag": "\"gMxXHe-zinKdE9lTnzKu8vjcmDI/1GLB-y5RITVbkQVc1ykwFXO5rb8\"",
"id":"UEw0dUFCODFmSmpiR0hHQWRHQXNHTlh0S1lWOVBhWmtkNy41NkI0NEY2RDEwNTU3Q0M2",
"snippet": {
"publishedAt": "2016-09-09T07:28:27.000Z",
"channelId": "UC8_MMK_ePSIQf0cRvX63RkQ",
"title": "Księżniczka do wzięcia - RODZINA PIRATÓW odc. 27 (PL)",
"description": "Rodzina piratów to serial animowany opowiadający o rodzinie piratów, która mieszka na wyspie wraz z innymi mieszkańcami. Co dzień pirat Wiktor Mac Bernic poszukuje skarbów, które są ukryte na wyspie. Jednak przeszkadza mu w tym jego sąsiad Albert Derekin wraz z jego rodziną. Na dodatek jego syn jest zakochany w Krewetce, czyli córce Wiktora.",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/slz8q6v091Y/default.jpg",
"width": 120,
"height": 90
},
"medium": {
"url": "https://i.ytimg.com/vi/slz8q6v091Y/mqdefault.jpg",
"width": 320,
"height": 180
},
"high": {
"url": "https://i.ytimg.com/vi/slz8q6v091Y/hqdefault.jpg",
"width": 480,
"height": 360
},
"standard": {
"url": "https://i.ytimg.com/vi/slz8q6v091Y/sddefault.jpg",
"width": 640,
"height": 480
}
},
"channelTitle": "RODZINA PIRATÓW",
"playlistId": "PL4uAB81fJjbGHGAdGAsGNXtKYV9PaZkd7",
"position": 0,
"resourceId": {
"kind": "youtube#video",
"videoId": "slz8q6v091Y"
}
}
}
}
]
我在使用下面的代碼嘗試訪問它時被卡住了。任何想法,我怎麼能modifiy腳本來提取「視頻ID」?:
import json
f = open('out.csv','w')
with open('Pirates3.json',encoding='UTF-8') as json_data:
data = json.load(json_data)
for r in data ['items']:
resourceId = r ['resourceId']
f.write(resourceId ['videoId']+',')
f.close()
您需要重新張貼Python代碼時的縮進。否則,你會在人們正在尋找的代碼中引入新的錯誤。 – khelwood
你的json沒有正確關閉...... –
只是爲了記錄:你正在處理的是一個普通的Python「dict」 - 它已經從json加載的事實是完全不相關的。 –