Получаете все отзывы от Steam с помощью Steamworks?

В настоящее время я пытаюсь получить все обзоры Steam от конкретной игры, используя метод, описанный в документации Steamworks: https://partner.steamgames.com/doc/store/getreviews

Тем не менее, когда я пытаюсь получить отзывы о такой игре, как Team Fortress 2, например, используя метод: http://store.steampowered.com/appreviews/440?json=1 я всегда получаю 20 отзывов из-за параметра start_offset.

Есть ли способ получить все отзывы в одной команде метода или мне нужно создать цикл с другим start_offset?

1 ответ

Похоже, Steam изменил API и теперь start_offset не работает, поменяли на cursor. вот дополнительная информация:https://partner.steamgames.com/doc/store/getreviews

простыми словами: вы отправляете, например. http://store.steampowered.com/appreviews/10?json=1&cursor=* и взамен вы получаете JSON со следующим курсором, который вам нужно проанализировать и использовать в следующем URL-адресе.

например. "cursor": "AoIIPwYYanDTv+QB"

также вам нужно не забыть кодировать курсор, чтобы следующий вызов был похож на http://store.steampowered.com/appreviews/10?json=1&cursor=AoIIPwYYanDTv%2BQB

Таплар правильно упомянул это в своем комментарии. start_offset - reviews are returned in batches of 20, so pass 0 for the first set, then 20 for the next set, etc. Вам нужно использовать смещение следующим образом:

Для такой игры, как DOTA 2, есть более 650 000 обзоров. Если вы представляете себя на месте Valve, имеет смысл ограничить вызовы API. Поэтому я могу с уверенностью сказать, что не существует API для всех обзоров одновременно.

Другие вопросы по тегам