Построение сетевого графа от пользователей твиттера по темам

Я пытаюсь построить граф социальной сети пользователей твиттера, которые упомянули определенную тему. Моя стратегия сделать это примерно так:

  1. Сделайте запрос в Twitter по теме. Соберите первые 100 появившихся твитов и добавьте этих пользователей в график.
  2. Для каждого пользователя:
  3. Найдите друзей и подписчиков.
  4. Спросите каждого друга / подписчика по теме. Если они обнаружат результат (что означает, что они обсудили тему), добавьте их в график.
  5. Для каждого пользователя, добавленного в график, вернитесь к шагу 2, пока не будет достигнута желаемая глубина поиска.

У меня двойная проблема. Во-первых, этот подход быстро превышает мой предел скорости поискового API. Даже при глубине поиска 2 вполне вероятно, что я найду людей с более чем 100 друзьями / подписчиками, и я не смогу запросить их всех, прежде чем достигну предела скорости.

Во-вторых, все это занимает довольно много времени. Twitter API работает не быстро. В гипотетическом случае, когда у меня не было ограничений по скорости, я мог отправлять запросы асинхронно, но не могу не задаться вопросом, есть ли более эффективный способ.

Я пробовал объединить запросы в один запрос по глубине поиска: тема И от: имя1 ИЛИ от: имя2 .... ИЛИ от: имяi

Это в основном взрывается. Я получаю сообщение об ошибке сброса соединения из twitter API. Если я скопирую запрос на веб-страницу Twitter, он просто задержится на некоторое время, а затем скажет: «Загрузка твитов, похоже, занимает некоторое время».

Я также отправил письмо по адресу [email protected], чтобы попросить совета / увеличения доступа, но пока ответа не получил.

Если у кого-то есть предложения о том, как собирать такую ​​информацию через twitter API, я был бы очень признателен. В настоящее время я использую twitter4j и java.


person Alex Pritchard    schedule 28.11.2011    source источник
comment
Я нашел страницу, на которой кто-то пытается сделать что-то похожее на то, что делаю я: babelgraph.org / wp /? p = 120 Он просматривает только самую верхнюю часть графа разговора, не увеличивая глубину поиска, и уже сталкивается с некоторыми проблемами ограничения скорости. Не очень многообещающе, но, по крайней мере, больше пищи для размышлений.   -  person Alex Pritchard    schedule 30.11.2011
comment
Ссылка выше из @Alex была перенесена на: gweissman.github.io/babelgraph/blog/2017/06/15/   -  person Gary Weissman    schedule 28.01.2019


Ответы (1)


Вы пробовали просто использовать отфильтрованный поток для темы и строить график, используя упоминания и ретвиты? Это довольно косвенно и все равно будет медленным, но не достигнет никаких ограничений по скорости.

См. http://truthy.indiana.edu/ и http://cnets.indiana..edu/groups/nan/truthy.

person DNA    schedule 03.12.2011
comment
В конечном итоге я стал искать по данной теме самые последние постеры по ней. Затем я выбираю несколько из них, из которых строю эгоцентрические сети. Теперь я могу отслеживать созданную сеть в реальном времени с помощью потокового API. Спасибо за вклад и отличные ссылки! - person Alex Pritchard; 06.12.2011