#api #twitter #limit
#API #Twitter #ограничение
Вопрос:
Я хочу знать, сколько подписчиков у моих подписчиков (так что это рекурсивно).
Проблема, очевидно, в ограничении API.
- Я считываю свои идентификаторы подписчиков с
http://api.twitter.com/1/followers/ids.json?screen_name=username
- Я запрашиваю
http://twitter.com/users/show.xml?user_id=the_id
, но если у меня много подписчиков, я быстро блокируюсь из-за ограничений API.
Есть ли способ обойти это? Например, сработает ли это для пользователей Twitter с числом подписчиков более 6000 (или даже бесконечным?) подписчики, если я попрошу пройти аутентификацию в их учетной записи Twitter? Или есть другой вызов API, который может выполнять больше запросов?
Ответ №1:
Если вы используете статусы / подписчиков для себя и просматриваете результаты.
http://dev.twitter.com/doc/get/statuses/followers
http://twitapi.com/explore/statuses-followers/
Это даст вам информацию о 100 подписчиках за вызов api. В этом результате, среди прочего, каждый подписчик, подписчик и количество подписчиков.
для 6000 потребуется всего 60 вызовов.
Поскольку это необходимо обработать во время аутентификации, вы также получите 300 вызовов api на пользователя.
Удачи.
Комментарии:
1. В качестве альтернативы вы можете использовать dev.twitter.com/doc/get/users/lookup это тоже может возвращать 100 пользователей одновременно, если вы знаете, о ком вам нужны данные.
Ответ №2:
В настоящее время нет способа объединить несколько вызовов API для Twitter в один, как Facebook позволяет вам. Так что, вероятно, нет способа сделать это эффективно, вам просто нужно распределить вызовы на несколько часов.
Комментарии:
1. что вы имеете в виду под «несколькими вызовами api»? Потому что это два разных вызова? Это действительно работает, но просто не так часто, как мне нужно. Кроме того, распределение вызовов на более длительное время не сработает, потому что я, вероятно, буду вызывать эту функцию чаще, чем может восстановиться ограничение API. Кроме того, пользователю с более чем 6000 подписчиками потребуется тогда .. эм .. 6000 / 150 (насколько я знаю, фактический лимит вызовов API) = 40 часов … o.O