2017-08-03 137 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']