ОШИБКА: Код 429

Работая с теми или иными функциями программы, можно столкнуться с кодом ошибки 429. В разных задачах это может указывать на разные ограничение схожего смысла. Рассмотрим два вида ошибок с таким кодом подробнее.



ЛИМИТ НА ЗАПРОСЫ ОТ ИМЕНИ АККАУНТА


Во время сбора аудитории, у вас может возникнуть ситуация, когда сбор начинает постоянно прерываться, а в логах указано сообщение вида: "[ERROR]:[429 - на всех используемых технических аккаунтах превышен часовой лимит на запросы]". Данное сообщение означает, что объём запросов со всех технических аккаунтов превысил допустимый лимит. В разных функциях этот лимит может менятся. Чаще всего этот лимит равен 5000 запросов в час, для некоторых функций он может быть равен 200 запросов в час. Это ограничение Instagram накладывает на любые способы работы со своим API в том числе и для своего собственного мобильного приложения.


Чтобы решить эту проблему можно взять другие технические аккаунты или дать отдохнуть текущим. Если планируется длительный непрерывный сбор аудитории, то можно взять более обширную группу технических аккаунтов и настроить переключение между ТА на каждый 32ой запрос. Это позволит распределить нагрузку на каждый из ТА во времени и обойти лимит, если за час каждый из ТА не превысит допустимый лимит по запросам.


По умолчанию в программе всюду выставлено безопасное значение в 4990 запросов. А для тех функций, где проблема лимитов стоит особенно остро - выставлено переключение между ТА на каждый 32ой запрос.



ЛИМИТ НА ЗАПРОСЫ С IP


Также существует лимит на число запросов в единицу времени в пределах каждого IP. Если вы посылаете запросы к серверу Instagram с того или иного IP слишком часто, то это также может привести к временному отказу в выполнении тех или иных запросов с того или иного IP. 


В отличие от предыдущей, данный тип блокировки выдаётся на  короткое время (в пределах 1-2 минут) и большинство задач на сбор или фильтрацию аудитории умеют переходить в режим ожидания при обнаружении такого типа блокировки. Тем не менее, вы можете столкнуться с функцией, которая не подразумевает наличие такого режима ожидания в качестве реакции на "Ошибку 429". Например, если вы превысили лимит на запросы с того или иного IP при использовании фильтра, а затем пытаетесь выполнить полную инициализацию Instagram-аккаунта с заблокированного IP, то получите на экран примерно такое сообщение, как указано на скриншоте ниже.




"Ошибка 429" во время инициализации Instagram-аккаунта.



В этом случае просто подождите 1-2 минуты, а затем попробуйте выполнить инициализацию аккаунта снова.

Сервис поддержки клиентов работает на платформе UserEcho