【发布时间】:2016-07-01 18:01:52
【问题描述】:
尝试使用 Python 解析此 JSON 输出时,我遗漏了什么? JSON 看起来像这样:
{
"start": 0,
"terms": [
"process_name:egagent.exe"
],
"highlights": [],
"total_results": 448,
"filtered": {},
"facets": {},
"results": [
{
"username": "SYSTEM",
"alert_type": "test"
},
{
"username": "SYSTEM2",
"alert_type": "test"
}
]
}
我试图用来访问它的 Python 很简单。我想获取用户名,但我尝试的一切都会引发错误。当它不抛出错误时,我似乎得到了每个人的信。所以,如果我这样做:
apirequest = requests.get(requesturl, headers=headers, verify=False)
readable = json.loads(apirequest.content)
#print readable
for i in readable:
print (i[0])
我得到 s, t, h, t, f, f, r,它们是每个项目的第一个字母。如果我尝试 i[1],我会得到每个项目的第二个字母。当我按名称尝试时,例如 i["start"],我收到一条错误消息,指出字符串索引必须是整数。我很困惑,而且我是 Python 新手,但我还没有找到任何关于此的内容。请帮忙!我只想访问用户名字段,这就是我尝试执行 for 循环的原因。提前致谢!
【问题讨论】:
-
如果你遍历一个字典,你只会得到键。试试
for key, value in readable.items():!