2017-08-03 117 views
-1

我新的JSON在python.Currently從HTTP API解析我已經在Python解析HTTP內容字符串,有JSON對象數組我的代碼波紋管從HTTP響應字符串如何獲得JSON元素蟒蛇

import json 
from urllib.request import urlopen 

apilink=urlopen("api link") 


data=json.loads(apilink.read().decode()) 

print(data) 
給出

和我的當前輸出是

{'Message': 'Success', 'Data': '[{"Did":"c055c3d2f3314725b69965e6c55adb5b","InsertedDate":"2017-08-02 7:27:11 AM","UpdatedDate":"2017-08-02 9:33:16 AM","CreatedBy":"1","UpdatedBy":"1","Name":"Hello World","ModuleName":"Rpt_Hello_World","ApplicationName":"Asset Inventory","Published":"true","UserId":"1","PostProcessor":""}]', 'Status': 'Success'} 

,但我想只提取屬性 '數據' 是JSON數組

'Data': '[{"Did":"c055c3d2f3314725b69965e6c55adb5b","InsertedDate":"2017-08-02 7:27:11 AM","UpdatedDate":"2017-08-02 9:33:16 AM","CreatedBy":"1","UpdatedBy":"1","Name":"Hello World","ModuleName":"Rpt_Hello_World","ApplicationName":"Asset Inventory","Published":"true","UserId":"1","PostProcessor":""}]' 

desirble部分是

[{ 「沒有符合」: 「c055c3d2f3314725b69965e6c55adb5b」, 「InsertedDate」: 「2017年8月2日上午07時27分11秒」, 「UpdatedDate」:「2017年8月2日9時33 :上午16點「,」CreatedBy「:」1「,」UpdatedBy「:」1「,」Name「:」Hello World「,」ModuleName「:」Rpt_Hello_World「,」ApplicationName「:」Asset Inventory「 :「true」,「UserId」:「1」,「PostProcessor」:「」}]

請幫我解決這個問題。 謝謝

+0

您可以訪問'Data'這樣'數據[ '數據']' – ksai

+0

如果你只想 '數據' 屬性,嘗試打印'數據[ '數據' ]' –

回答

2

data是一本字典。使用字典索引。您需要與Data關聯的值:

In [876]: data['Data'] 
Out[876]: '[{"Did":"c055c3d2f3314725b69965e6c55adb5b","InsertedDate":"2017-08-02 7:27:11 AM","UpdatedDate":"2017-08-02 9:33:16 AM","CreatedBy":"1","UpdatedBy":"1","Name":"Hello World","ModuleName":"Rpt_Hello_World","ApplicationName":"Asset Inventory","Published":"true","UserId":"1","PostProcessor":""}]' 

這是一個字符串。您可以再次使用json.loads

In [877]: json.loads(data['Data']) 
Out[877]: 
[{'ApplicationName': 'Asset Inventory', 
    'CreatedBy': '1', 
    'Did': 'c055c3d2f3314725b69965e6c55adb5b', 
    'InsertedDate': '2017-08-02 7:27:11 AM', 
    'ModuleName': 'Rpt_Hello_World', 
    'Name': 'Hello World', 
    'PostProcessor': '', 
    'Published': 'true', 
    'UpdatedBy': '1', 
    'UpdatedDate': '2017-08-02 9:33:16 AM', 
    'UserId': '1'}] 
0

那簡單

format: jsonName[attributename] 

data['Data']