首页 > 解决方案 > 我如何从 steam api 获取统计信息

问题描述

我在 json 文件中使用 steam api 获取 csgo 统计信息,但我不知道如何获取例如击杀次数或我尝试的其他内容

csgo = requests.get(f"http://api.steampowered.com/ISteamUserStats/GetUserStatsForGame/v2/?appid=730&key={steam_api}&steamid={(steamid)}")
csgo_stats, = csgo.json()
csgo1 = csgo_stats['playerstats']['stats']['total_kills']
print(csgo1) 

但这不起作用。我得到了那个json

{"playerstats":{"steamID":"76561198875082603","gameName":"ValveTestApp260","stats":[{"name":"total_kills","value":18792},{"name":"total_deaths","value":6690},{"name":"total_time_played","value":378826},{"name":"total_planted_bombs","value":389},{"name":"total_defused_bombs","value":79},{"name":"total_wins","value":3059},{"name":"total_damage_done","value":3066987},{"name":"total_money_earned","value":18600200},{"name":"total_kills_knife","value":147},{"name":"total_kills_hegrenade","value":52},{"name":"total_kills_glock","value":173},{"name":"total_kills_deagle","value":524},{"name":"total_kills_elite","value":76},{"name":"total_kills_fiveseven","value":1},{"name":"total_kills_xm1014","value":200},{"name":"total_kills_mac10","value":17},{"name":"total_kills_ump45","value":257},{"name":"total_kills_p90","value":506},{"name":"total_kills_awp","value":878},{"name":"total_kills_ak47","value":1201},{"name":"total_kills_aug","value":261},{"name":"total_kills_famas","value":108},{"name":"total_kills_g3sg1","value":17},{"name":"total_kills_m249","value":5},{"name":"total_kills_headshot","value":5715},{"name":"total_kills_enemy_weapon","value":490},{"name":"total_wins_pistolround","value":326},{"name":"total_wins_map_cs_office","value":12},{"name":"total_wins_map_de_cbble","value":2},{"name":"total_wins_map_de_dust2","value":169},{"name":"total_wins_map_de_inferno","value":533},{"name":"total_wins_map_de_nuke","value":10},{"name":"total_wins_map_de_train","value":5},{"name":"total_weapons_donated","value":339},{"name":"total_kills_enemy_blinded","value":111},{"name":"total_kills_knife_fight","value":52},{"name":"total_kills_against_zoomed_sniper","value":660},{"name":"total_dominations","value":50},{"name":"total_domination_overkills","value":29},{"name":"total_revenges","value":23},{"name":"total_shots_hit","value":35674},{"name":"total_shots_fired","value":133850},{"name":"total_rounds_played","value":6226},{"name":"total_shots_deagle","value":5220},{"name":"total_shots_glock","value":5190},{"name":"total_shots_elite","value":1656},{"name":"total_shots_fiveseven","value":460},{"name":"total_shots_awp","value":3241},{"name":"total_shots_ak47","value":23181},{"name":"total_shots_aug","value":3712},{"name":"total_shots_famas","value":1128},{"name":"total_shots_g3sg1","value":109},{"name":"total_shots_p90","value":5920},{"name":"total_shots_mac10","value":830},{"name":"total_shots_ump45","value":2984},{"name":"total_shots_xm1014","value":4060},{"name":"total_shots_m249","value":218},{"name":"total_hits_deagle","value":1301},{"name":"total_hits_glock","value":1241},{"name":"total_hits_elite","value":348},{"name":"total_hits_fiveseven","value":60},{"name":"total_hits_awp","value":1009},{"name":"total_hits_ak47","value":4190},{"name":"total_hits_aug","value":954},{"name":"total_hits_famas","value":430},{"name":"total_hits_g3sg1","value":30},{"name":"total_hits_p90","value":2552},{"name":"total_hits_mac10","value":151},{"name":"total_hits_ump45","value":1160},{"name":"total_hits_xm1014","value":1331},{"name":"total_hits_m249","value":20},{"name":"total_rounds_map_cs_office","value":21},{"name":"total_rounds_map_de_cbble","value":20},{"name":"total_rounds_map_de_dust2","value":419},{"name":"total_rounds_map_de_inferno","value":1124},{"name":"total_rounds_map_de_nuke","value":29},{"name":"total_rounds_map_de_train","value":7},{"name":"last_match_t_wins","value":0},{"name":"last_match_ct_wins","value":2},{"name":"last_match_wins","value":2},{"name":"last_match_max_players","value":11},{"name":"last_match_kills","value":4},{"name":"last_match_deaths","value":3},{"name":"last_match_mvps","value":0},{"name":"last_match_favweapon_id","value":9},{"name":"last_match_favweapon_shots","value":4},{"name":"last_match_favweapon_hits","value":2},{"name":"last_match_favweapon_kills","value":2},{"name":"last_match_damage","value":506},{"name":"last_match_money_spent","value":12650},{"name":"last_match_dominations","value":0},{"name":"last_match_revenges","value":0},{"name":"total_mvps","value":1122},{"name":"total_rounds_map_de_lake","value":1824},{"name":"total_rounds_map_de_safehouse","value":3},{"name":"total_rounds_map_de_sugarcane","value":6},{"name":"total_rounds_map_de_stmarc","value":8},{"name":"total_TR_planted_bombs","value":1},{"name":"total_gun_game_rounds_won","value":27},{"name":"total_gun_game_rounds_played","value":55},{"name":"total_wins_map_de_vertigo","value":3},{"name":"total_rounds_map_ar_shoots","value":4},{"name":"total_rounds_map_ar_baggage","value":1},{"name":"total_wins_map_ar_shoots","value":2},{"name":"total_wins_map_de_lake","value":991},{"name":"total_wins_map_de_sugarcane","value":6},{"name":"total_wins_map_de_stmarc","value":1},{"name":"total_matches_won","value":150},{"name":"total_matches_played","value":433},{"name":"total_gg_matches_won","value":1},{"name":"total_gg_matches_played","value":51},{"name":"total_trbomb_matches_won","value":1},{"name":"total_contribution_score","value":46566},{"name":"last_match_contribution_score","value":4},{"name":"last_match_rounds","value":2},{"name":"total_kills_hkp2000","value":406},{"name":"total_shots_hkp2000","value":7784},{"name":"total_hits_hkp2000","value":1770},{"name":"total_hits_p250","value":1081},{"name":"total_kills_p250","value":302},{"name":"total_shots_p250","value":5388},{"name":"total_kills_sg556","value":269},{"name":"total_shots_sg556","value":5536},{"name":"total_hits_sg556","value":1059},{"name":"total_hits_scar20","value":26871},{"name":"total_kills_scar20","value":11524},{"name":"total_shots_scar20","value":14268},{"name":"total_shots_ssg08","value":1966},{"name":"total_hits_ssg08","value":576},{"name":"total_kills_ssg08","value":241},{"name":"total_shots_mp7","value":5133},{"name":"total_hits_mp7","value":1092},{"name":"total_kills_mp7","value":151},{"name":"total_kills_mp9","value":23},{"name":"total_shots_mp9","value":1120},{"name":"total_hits_mp9","value":177},{"name":"total_hits_nova","value":471},{"name":"total_kills_nova","value":61},{"name":"total_shots_nova","value":2374},{"name":"total_hits_negev","value":96},{"name":"total_kills_negev","value":27},{"name":"total_shots_negev","value":1025},{"name":"total_shots_sawedoff","value":424},{"name":"total_hits_sawedoff","value":55},{"name":"total_kills_sawedoff","value":6},{"name":"total_shots_bizon","value":5167},{"name":"total_hits_bizon","value":1002},{"name":"total_kills_bizon","value":139},{"name":"total_kills_tec9","value":14},{"name":"total_shots_tec9","value":537},{"name":"total_hits_tec9","value":90},{"name":"total_shots_mag7","value":816},{"name":"total_hits_mag7","value":179},{"name":"total_kills_mag7","value":21},{"name":"total_gun_game_contribution_score","value":245},{"name":"last_match_gg_contribution_score","value":0},{"name":"total_kills_m4a1","value":1101},{"name":"total_kills_galilar","value":50},{"name":"total_kills_molotov","value":22},{"name":"total_kills_taser","value":12},{"name":"total_shots_m4a1","value":23209},{"name":"total_shots_galilar","value":1165},{"name":"total_shots_taser","value":29},{"name":"total_hits_m4a1","value":4478},{"name":"total_hits_galilar","value":194},{"name":"total_rounds_map_de_vertigo","value":12},{"name":"total_matches_won_lake","value":66},{"name":"total_matches_won_sugarcane","value":1},{"name":"GI.lesson.csgo_instr_explain_buymenu","value":16},{"name":"GI.lesson.csgo_instr_explain_buyarmor","value":0},{"name":"GI.lesson.csgo_instr_explain_plant_bomb","value":0},{"name":"GI.lesson.csgo_instr_explain_bomb_carrier","value":0},{"name":"GI.lesson.bomb_sites_A","value":0},{"name":"GI.lesson.csgo_instr_explain_follow_bomber","value":0},{"name":"GI.lesson.csgo_instr_explain_pickup_bomb","value":0},{"name":"GI.lesson.csgo_instr_explain_prevent_bomb_pickup","value":0},{"name":"GI.lesson.Csgo_cycle_weapons_kb","value":0},{"name":"GI.lesson.csgo_instr_explain_zoom","value":16},{"name":"GI.lesson.csgo_instr_explain_reload","value":1},{"name":"GI.lesson.tr_explain_plant_bomb","value":0},{"name":"GI.lesson.bomb_sites_B","value":0},{"name":"GI.lesson.version_number","value":16},{"name":"GI.lesson.csgo_hostage_lead_to_hrz","value":0},{"name":"GI.lesson.csgo_instr_rescue_zone","value":0},{"name":"GI.lesson.csgo_instr_explain_inspect","value":32}],"achievements":[{"name":"WIN_BOMB_PLANT","achieved":1},{"name":"BOMB_PLANT_LOW","achieved":1},{"name":"KILL_ENEMY_LOW","achieved":1},{"name":"KILL_ENEMY_MED","achieved":1},{"name":"KILL_ENEMY_HIGH","achieved":1},{"name":"BOMB_DEFUSE_CLOSE_CALL","achieved":1},{"name":"KILL_BOMB_DEFUSER","achieved":1},{"name":"WIN_BOMB_DEFUSE","achieved":1},{"name":"BOMB_PLANT_IN_25_SECONDS","achieved":1},{"name":"WIN_ROUNDS_LOW","achieved":1},{"name":"WIN_ROUNDS_MED","achieved":1},{"name":"GIVE_DAMAGE_LOW","achieved":1},{"name":"GIVE_DAMAGE_MED","achieved":1},{"name":"GIVE_DAMAGE_HIGH","achieved":1},{"name":"KILLING_SPREE","achieved":1},{"name":"KILL_WITH_OWN_GUN","achieved":1},{"name":"KILL_TWO_WITH_ONE_SHOT","achieved":1},{"name":"EARN_MONEY_LOW","achieved":1},{"name":"EARN_MONEY_MED","achieved":1},{"name":"DEAD_GRENADE_KILL","achieved":1},{"name":"KILL_ENEMY_DEAGLE","achieved":1},{"name":"KILL_ENEMY_GLOCK","achieved":1},{"name":"KILL_ENEMY_ELITE","achieved":1},{"name":"KILL_ENEMY_AWP","achieved":1},{"name":"KILL_ENEMY_AK47","achieved":1},{"name":"KILL_ENEMY_M4A1","achieved":1},{"name":"KILL_ENEMY_AUG","achieved":1},{"name":"KILL_ENEMY_FAMAS","achieved":1},{"name":"KILL_ENEMY_P90","achieved":1},{"name":"KILL_ENEMY_UMP45","achieved":1},{"name":"KILL_ENEMY_XM1014","achieved":1},{"name":"KILL_ENEMY_KNIFE","achieved":1},{"name":"KILL_ENEMY_TEAM","achieved":1},{"name":"KILLS_WITH_MULTIPLE_GUNS","achieved":1},{"name":"KILL_HOSTAGE_RESCUER","achieved":1},{"name":"LAST_PLAYER_ALIVE","achieved":1},{"name":"KILL_ENEMY_LAST_BULLET","achieved":1},{"name":"KILLING_SPREE_ENDER","achieved":1},{"name":"HEADSHOTS","achieved":1},{"name":"DAMAGE_NO_KILL","achieved":1},{"name":"KILL_LOW_DAMAGE","achieved":1},{"name":"KILL_ENEMY_RELOADING","achieved":1},{"name":"KILL_ENEMY_BLINDED","achieved":1},{"name":"KILL_ENEMIES_WHILE_BLIND","achieved":1},{"name":"KILLS_ENEMY_WEAPON","achieved":1},{"name":"KILL_WITH_EVERY_WEAPON","achieved":1},{"name":"SURVIVE_GRENADE","achieved":1},{"name":"WIN_KNIFE_FIGHTS_LOW","achieved":1},{"name":"KILLED_DEFUSER_WITH_GRENADE","achieved":1},{"name":"HIP_SHOT","achieved":1},{"name":"KILL_SNIPER_WITH_SNIPER","achieved":1},{"name":"KILL_SNIPER_WITH_KNIFE","achieved":1},{"name":"KILL_SNIPERS","achieved":1},{"name":"KILL_WHEN_AT_LOW_HEALTH","achieved":1},{"name":"PISTOL_ROUND_KNIFE_KILL","achieved":1},{"name":"FAST_ROUND_WIN","achieved":1},{"name":"WIN_PISTOLROUNDS_LOW","achieved":1},{"name":"WIN_PISTOLROUNDS_MED","achieved":1},{"name":"WIN_PISTOLROUNDS_HIGH","achieved":1},{"name":"WIN_BOMB_PLANT_AFTER_RECOVERY","achieved":1},{"name":"LOSSLESS_EXTERMINATION","achieved":1},{"name":"FLAWLESS_VICTORY","achieved":1},{"name":"WIN_DUAL_DUEL","achieved":1},{"name":"UNSTOPPABLE_FORCE","achieved":1},{"name":"IMMOVABLE_OBJECT","achieved":1},{"name":"HEADSHOTS_IN_ROUND","achieved":1},{"name":"WIN_MAP_DE_DUST2","achieved":1},{"name":"WIN_MAP_DE_INFERNO","achieved":1},{"name":"KILL_WHILE_IN_AIR","achieved":1},{"name":"KILL_ENEMY_IN_AIR","achieved":1},{"name":"KILLER_AND_ENEMY_IN_AIR","achieved":1},{"name":"SILENT_WIN","achieved":1},{"name":"BLOODLESS_VICTORY","achieved":1},{"name":"DONATE_WEAPONS","achieved":1},{"name":"DEFUSE_DEFENSE","achieved":1},{"name":"KILL_BOMB_PICKUP","achieved":1},{"name":"DOMINATIONS_LOW","achieved":1},{"name":"DOMINATIONS_HIGH","achieved":1},{"name":"DOMINATION_OVERKILLS_LOW","achieved":1},{"name":"REVENGES_LOW","achieved":1},{"name":"REVENGES_HIGH","achieved":1},{"name":"CONCURRENT_DOMINATIONS","achieved":1},{"name":"KILL_ENEMIES_WHILE_BLIND_HARD","achieved":1},{"name":"CAUSE_FRIENDLY_FIRE_WITH_FLASHBANG","achieved":1},{"name":"AVENGE_FRIEND","achieved":1},{"name":"GUN_GAME_KILL_KNIFER","achieved":1},{"name":"WIN_MAP_DE_LAKE","achieved":1},{"name":"WIN_MAP_DE_SUGARCANE","achieved":1},{"name":"WIN_GUN_GAME_ROUNDS_LOW","achieved":1},{"name":"ONE_SHOT_ONE_KILL","achieved":1},{"name":"BASE_SCAMPER","achieved":1},{"name":"BORN_READY","achieved":1},{"name":"STILL_ALIVE","achieved":1},{"name":"KILL_ENEMY_TASER","achieved":1},{"name":"KILL_ENEMY_HKP2000","achieved":1},{"name":"KILL_ENEMY_P250","achieved":1},{"name":"KILL_ENEMY_SCAR20","achieved":1},{"name":"KILL_ENEMY_SG556","achieved":1},{"name":"KILL_ENEMY_SSG08","achieved":1}]}}

标签: pythonapidiscord.pysteam

解决方案


如果您发布的 JSON 是,csgo.json()那么您可以这样做以获得总击杀数。

csgo_stats = csgo.json()

for stat in csgo_stats["playerstats"]["stats"]:
    if stat["name"] == "total_kills":
        print(stat["value"])

推荐阅读