Я пытаюсь построить график социальной сети пользователей Твиттера, которые упомянули конкретную тему.Моя стратегия сделать это выглядит примерно так:
- Запрос Twitter для темы.Соберите первые 100 твитов, которые появятся, и добавьте этих пользователей в график.
- Для каждого пользователя:
- Получите друзей и подписчиков.
- Запросите у каждого друга / подписчика длятема.Если они показывают результат (то есть обсудили тему), добавьте их в график.
- Для каждого пользователя, который был добавлен в график, возвращайтесь к шагу 2, пока не будет достигнута желаемая глубина поиска.
Моя проблема двоякая.Прежде всего, этот подход быстро превышает мой предел скорости поиска API.Даже при глубине поиска 2 вполне вероятно, что я найду людей с более чем 100 друзьями / подписчиками, и я не смогу запросить их у всех, прежде чем достигнуть ограничения скорости.
Во-вторых, все это занимает довольно много времени,API Twitter не быстрый.В гипотетическом случае, когда у меня не было ограничений по скорости, я мог отправлять запросы асинхронно, но я не могу не задаться вопросом, существует ли более эффективный способ.
Я пытался объединять запросы в один запрос заглубина поиска: тема И от: имя1 ИЛИ от: имя2 .... ИЛИ от: namei
Это в основном взрывается.Я получаю ошибку сброса соединения из Twitter API.Если я скопирую запрос на веб-страницу в твиттере, он просто ненадолго задержится и скажет: «загрузка твитов, похоже, занимает некоторое время».
Я также написал по электронной почте api@twitter.com, чтобы попросить предложения / увеличения доступа, но пока нет ответа.
Если у кого-то есть какие-либо предложения о том, как собирать информацию такого типа черезAPI Twitter, я был бы очень признателен.В настоящее время я использую twitter4j и java.