#twitter #tweetsharp
#Twitter #tweetsharp
Вопрос:
Я пытаюсь написать программу, которая будет извлекать все твиты, которые пользователь видел на своей домашней временной шкале в Twitter (т. Е. от людей, на которых они подписаны, как они могли бы видеть на twitter.com ). Я понимаю, что это большой объем данных, а rest API имеет ограничения.
Каков был бы наилучший способ сделать это? Медленно извлекайте последние 200 или сколько там еще твитов, учитывая ограничение в 350 запросов в час? Или есть какое-то жесткое ограничение на то, как далеко назад я могу зайти даже с этим?
Я полагаю, что потоковый API транслирует только с текущего момента, поэтому я не думаю, что это вариант. Это личный проект, поэтому я не могу платить очень много за какой-либо расширенный доступ или что-либо еще.
Ответ №1:
Да, существует ограничение на то, как далеко вы можете вернуться назад:
Клиенты могут получить доступ к теоретическому максимуму из 3200 статусов через параметры страницы и подсчета для методов user_timeline REST API. Другие методы временной шкалы имеют теоретический максимум 800 статусов. Запросы, превышающие лимит, приведут к ответу с кодом статуса 200 и пустым результатом в запрошенном формате. Twitter по-прежнему поддерживает базу данных всех твитов, отправленных пользователем. Однако для обеспечения производительности сайта это искусственное ограничение временно действует.
Источник:http://dev.twitter.com/pages/every_developer
Как вы упомянули, вам нужно будет просматривать страницу за страницей каждый из 200 максимальных результатов, которые возвращаются, пока вы не достигнете этого предела и не получите пустой набор результатов, следя за тем, чтобы не набирать 350 запросов в час. Также могут быть пробелы в зависимости от того, сколько твитов у пользователя на временной шкале.