我正在编写一个小程序,用于比较名为osu的游戏中的排名。 我是一个初学者,现在有点想从这里离开,我知道/认为我将json数据转换为python中的dict,然后提取所需的特定信息并进行比较用户排名?
抱歉,我现在只有大约3-4周的时间在编码,我想继续着手为我开始第一个小小的大项目。
这是我正在使用的游戏/ api的git https://github.com/ppy/osu-api/wiki
我当前的代码:
import requests
import json
print('Please Enter Usernames to Compare')
payload = {'k': 'myapikey', 'u': input()}
r = requests.get('https://osu.ppy.sh/api/get_user', params=payload)
print(r.text)
data = json.loads(r.text)
这是我输入用户名时的信息内容 我想从中获取信息:
[
{
"user_id": "14376563",
"username": "kaidwards",
"join_date": "2019-05-01 01:48:05",
"count300": "92149",
"count100": "21750",
"count50": "3790",
"playcount": "818",
"ranked_score": "72307846",
"total_score": "209966595",
"pp_rank": "627326",
"level": "31.8303",
"pp_raw": "308.758",
"accuracy": "89.91222381591797",
"count_rank_ss": "0",
"count_rank_ssh": "0",
"count_rank_s": "6",
"count_rank_sh": "0",
"count_rank_a": "15",
"country": "US",
"total_seconds_played": "58234",
"pp_country_rank": "97990",
"events": [
{
"display_html": "<img src='/images/S_small.png'/> <b><a href='/u/14376563'>kaidwards</a></b> achieved rank #583 on <a href='/b/1948011?m=0'>Minase Inori, Hanazawa Kana, Iguchi Yuka, Hayami Saori - One Step [Hard]</a> (osu!)",
"beatmap_id": "1948011",
"beatmapset_id": "932314",
"date": "2019-06-29 07:52:16",
"epicfactor": "1"
},
{
"display_html": "<img src='/images/B_small.png'/> <b><a href='/u/14376563'>kaidwards</a></b> achieved rank #442 on <a href='/b/1985907?m=0'>Kuba Oms - Sex Is Good [Cherry Blossom's Hard]</a> (osu!)",
"beatmap_id": "1985907",
"beatmapset_id": "935772",
"date": "2019-06-29 07:40:31",
"epicfactor": "1"
},
{
"display_html": "<b><a href='/u/14376563'>kaidwards</a></b> unlocked the \"<b>Challenge Accepted</b>\" medal!",
"beatmap_id": "0",
"beatmapset_id": "0",
"date": "2019-06-29 07:08:11",
"epicfactor": "4"
}
]
}
]
我需要从r.text中获取信息。
我需要抓的具体东西是pp_rank":"627326
。
答案 0 :(得分:1)
数据是dictionary
数据类型。可以通过data['pp_rank']
或data['level']
访问其每个键的值(例如'pp_rank'或'level')。例如:
>>> data['pp_rank']
627326
有关Python-3.x中dictionary
数据类型的更多参考,请参见Python's data structures documentation。