我想從使用請求的API從這個JSON文件獲取屬性。 這是我的代碼:如何使用請求從json中搜索值?
import requests
print "Enter a user ID or name..."
inp = raw_input()
print "Select a mode..."
mode = raw_input()
def usage():
print "0 = osu!"
print "1 = Taiko"
print "2 = CtB"
print "3 = osu!mainia"
if mode == "0" or "1" or "2" or "3":
r=requests.get("https://osu.ppy.sh/api/get_useru="+inp+"&k=bd1f7038XXXXXXX+mode)
print(r.text)
它返回該JSON:
{ 「user_ID的」: 「2」, 「用戶名」: 「強力的」, 「count300」: 「624689」, 「count100」: 「110468」, 「count50」: 「22795」, 「playcount」: 「6960」, 「ranked_score」: 「409604138」, 「total_score」: 「1806143869」, 「pp_rank」: 「187209」, 「level」:「64.9581」, 「pp_生 「: 」753.665「, 」準確性「: 」96.74224853515625「, 」count_rank_ss「: 」16「, 」count_rank_s「: 」66「, 」count_rank_a「: 」109「, 」國家「:」 AU 」 「pp_country_rank」: 「4363」, 「事件」:[] }
如果我嘗試做這樣的事情:
打印(r.content [用戶名]
我得到這個錯誤: 回溯(最近的通話最後): 文件「C:\ Pyth on27 \ osu_api \ osu.py」,第18行,在 打印(r.content [用戶名]) NameError:名稱 '用戶名' 未定義
你試過'r.content [「username」]'? – Tomer
回溯(最近一次調用最後一次): 文件「C:\ Python27 \ osu_api \ osu.py」,第18行,在 print(r.content [「用戶名」]) TypeError:字符串索引必須是整數, not str –