Результат Spotify API ограничен 2000?

Я пытался вытащить все альбомы, выпущенные каждый год из каталога Spotify через их API (используя Spotipy для Python), но я наткнулся на ограничение в 2000 альбомов в год (параметр offset, кажется, ограничен 2000), выше которого я получить ответ 404.

Может ли кто-нибудь уточнить, является ли это жестким ограничением или есть обходной путь для получения более 2000 альбомов через их конечную точку search?

В документации к API Spotify нет упоминания об этом ограничении в 2000, и было бы жаль, если бы мы могли получить доступ только к такому ограниченному объему информации (похоже, они даже не предлагают платный план без ограничений). Я нашел эту связанную проблему, но перечисленные там обходные пути (например, добавление AND [a-z]*) похоже больше не работает.

РЕДАКТИРОВАТЬ: похоже, что бета-версия документов включает ссылку на этот предел для параметра offset:

введите здесь описание изображения


person JacoSolari    schedule 12.11.2020    source источник


Ответы (1)


Вам нужно будет получить все альбомы по частям.

Итак, по первому запросу вы получите первые 2000 предметов;

search('query', 2000, 0)

Затем во втором запросе вам понадобится offset чтобы указать Spotify «пропустить» первые 2000 элементов;

search('query', 2000, 2000)

Затем вы можете продолжать отправлять эти запросы, пока у вас не будет всех доступных альбомов;

search('query', 2000, 4000)

документация Spotipy: введите здесь описание изображения

person 0stone0    schedule 12.11.2020
comment
Это то, что я делаю в данный момент. К сожалению, похоже, что для параметра offset установлено максимальное значение 2000, которое упоминается только в бета-документации, я только что нашел его. developer.spotify.com/documentation/web-api/reference -beta/ если вы прокрутите до конечной точки search, вы увидите, что смещение ограничено 2000... есть идеи получить более 2000 результатов из конечной точки search? или альтернативный подход для получения всех альбомов, выпущенных в данный год? - person JacoSolari; 12.11.2020
comment
Вы должны уточнить это в вопросе и/или показать код. Я не могу найти ничего, связанного с макс. 2000 на offset, а также в предоставленной вами ссылке. - person 0stone0; 12.11.2020
comment
Уточнил вопрос. Это то, что я вижу, когда я нажимаю на Search API на левой панели страницы, на которую я ссылался в своем предыдущем комментарии под параметром offset: смещение Индекс первого возвращаемого результата. По умолчанию: 0 (первый результат). Максимальное смещение (включая лимит): 2000. Используйте с ограничением, чтобы получить следующую страницу результатов поиска. - person JacoSolari; 12.11.2020