我試圖解析字典中的特定值。該字典是來自API查詢的json有效內容。我嘗試了很多方法,但我無法得到我想要的。試圖解析python中的json響應的值
我的目標是:
- 通過解析現有名稱的列表。我有一個從文件導入的空字典。
- 查看該名稱是否對每個API響應有效。
- 打印活躍用戶列表:如果用戶正在活動打印(「用戶:%s活動」%用戶)
- 然後打印非活動用戶列表:else print(「用戶:%s不活動」 %用戶)
爲了得到我的價值觀:
#!/usr/bin/env python
import requests
from requests.auth import HTTPBasicAuth
import json
import sys
import getpass
password = getpass.getpass()
url = "https://myurl/blah/blah/getusers=true"
request = requests.get(url,auth=HTTPBasicAuth('username', password.format(password)), verify=True)
if(request.ok):
data = json.loads(request.content)
for key in data:
users = data[key]
print users
else:
request.raise_for_status()
正在返回什麼:
https://myurl/blah/blah/getusers=true
getusers
users{u'max-results': 50, u'items': [{u'displayName': u'testfirstname, testlastname', u'name': u'testfirstname', u'self': u'https://blah/blah', u'emailAddress': u'[email protected]', u'key': u'myusername', u'active': True, u'timeZone': u'America/Los_Angeles'},
我不知道,如果是菊st,我很難找到哪個鍵或什麼。答案中的關鍵是:u'active':True。我試圖拉動'積極'的價值,但無濟於事。任何幫助,將不勝感激。
編輯:更多信息。因此,有效負載將爲每個用戶返回一個包含數據的用戶列表。 「active:True」只是定義系統中用戶的一個參數。我想獲取我已擁有的用戶列表,並檢查API以查看列表中的每個用戶是「active:True」還是「active:False」。 我不知道爲什麼前兩行返回(url和getusers)
'json.loads()'會給你一個嵌套字典。檢查多個級別的按鍵,找到你想要的。我需要一個更具體的問題來說更多 - 實際上我不知道你在找什麼,或者你的數據是什麼樣的。 –
打印輸出中的字典輸出實際上是什麼?這是整個迴應?你有3行輸出,但只有一個'print',我不知道我們在那看什麼。 – roganjosh