如何使用嵌入的JSON 文件存取巢狀JSON 資料
在解析複雜的JSON 資料時,您可能會遇到嵌入的JSON 文件作為字串內的字串主要JSON 結構。要存取這些嵌入文件的內容,請按照以下步驟操作:
問題:
考慮以下JSON 結構:
{ <br>“狀態”:“200”,<br>“訊息”: "",<br> "data": {<pre class="brush:php;toolbar:false">"time": "1515580011", "video_info": [ { "announcement": "{\n\t\"announcement_id\":\"6\",\n\t\"name\":\"INS\u8d26\u53f7\",\n\t\"icon\":\"http:\\/\\/liveme.cms.ksmobile.net\\/live\\/announcement\\/2017-08-18_19:44:54\\/ins.png\",\n\t\"icon_new\":\"http:\\/\\/liveme.cms.ksmobile.net\\/live\\/announcement\\/2017-10-20_22:24:38\\/4.png\",\n\t\"videoid\":\"15154610218328614178\",\n\t\"content\":\"FOLLOW ME PLEASE\",\n\t\"x_coordinate\":\"0.22\",\n\t\"y_coordinate\":\"0.23\"}\n", "announcement_shop": "" } ]
}
}
存取嵌入JSON 的「內容」值在「公告」中的文件中,您可以嘗試以下操作:
replay_data = raw_replay_data'data'[0]<br>announcement = replay_data['announcement']
但是,announcement 現在是表示更多 JSON 資料的字串,並索引announcement['content']結果因無效字串而出現類型錯誤
解決方案:
要正確存取所需的字串,請使用以下步驟:
導入json
announcement_dict = json.loads(announcement)
desired_content =<p><strong><pre class="brush:php;toolbar:false">desired_content = announcement_dict['content']
video_info(列表)沿路徑下降:
- 清單中的第一個字典
- 公告(代表的字串JSON)
- 內容(在載入的JSON 內)
以上是如何使用嵌入式 JSON 文件作為字串存取巢狀 JSON 資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!