Как я могу использовать Steam Web API для получения статистики игрока, например, «Всего убийств» или «Всего побед». Некоторые сайты, которые используют эти функции, включают http://csgo-stats.com и http://csgo-stats.net. Я пробовал использовать http://api.steampowered.com/ISteamUserStats/GetGlobalStatsForGame/v0001/?format=xml&appid=730&count=1&name[0]=total_wins
без успеха. Где документация для такой статистики?Получение CS: GO статистика игрока
6
A
ответ
8
Я считаю, что вы используете неправильную конечную точку API для этого. Вместо этого используйте конечную точку GetUserStatsForGame
.
Ваш вызов будет выглядеть следующим образом:
http://api.steampowered.com/ISteamUserStats/GetUserStatsForGame/v0002/?appid=730&key=<<KEY>>&steamid=<<PROFILEID>>
Вы замените <<KEY>>
с ключом API и <<PROFILEID>>
с идентификатором профиля (не SteamID) пользователя вы заинтересованы в Этом значении то же самое. один передал вам, когда вы sign in через OpenID клапана.
Это вернет результат, похожий на этот:
{
"playerstats": {
"steamID": "7656-EDITED-OUT",
"gameName": "ValveTestApp260",
"stats": [
{
"name": "total_kills",
"value": 110527
},
{
"name": "total_deaths",
"value": 95930
},
{
"name": "total_time_played",
"value": 5784386
},
{
"name": "total_planted_bombs",
"value": 2726
},
{
"name": "total_defused_bombs",
"value": 594
},
{
"name": "total_wins",
"value": 26937
},
...
]
}
}
Вы можете видеть, что вам нужно перебирать ['playerstats']['stats']
элемента и посмотреть на атрибут каждого name
найти статистику вы ищете.
Это работает сейчас? Я не думаю, что так ... Я пытаюсь, но это дает мне пустые результаты. – Umair
@Umair Возможно, вы пытаетесь получить «свою собственную» статистику, т. Е. Ваш параметр «steamid» - это то же самое, что связано с вашим API 'key' , У меня была очень похожая проблема сегодня. Похоже, вы не можете сделать это с помощью «GetUserStatsForGame». (Внутренняя ошибка сервера) – Skipper