Twitter: локальные сообщения через API - PullRequest
2 голосов
/ 05 июня 2009

Несколько дней назад я увидел, что happn.in теперь предлагает услугу, где твиты (сообщения на twitter.com) группируются и анализируются для локальных областей. Для нескольких городов они дают вам список самых популярных терминов.

Я знаю, что вы не можете точно знать, как они это делают, но, возможно, вы можете мне помочь, хотя: Как я могу это сделать тоже? У меня есть несколько подходов. Один из них полезен?

  • ПОДХОД 1

Используйте REST API public_timeline и просматривайте все твиты каждый раз. Составьте список моделей и подходящих мест, например, «Нью-Йорк» и «Нью-Йорк» означают «Нью-Йорк», «Лос-Анджелес», «Лос-Анджелес» - «Лос-Анджелес» и т. Д. Если вы не можете найти известный шаблон, переходите к следующему твиту.

  • ПОДХОД 2

Используйте функцию геокода Search API, например, "http://search.twitter.com/search.atom?geocode=##LAT##%2C##LONG##%2C##radius##km". К сожалению, я не знаю, насколько результаты достоверны / хороши!?

  • ПОДХОД 3

Следите за пользователями, у которых есть название города в поле их местоположения, и анализируйте REST API friends_timeline

У вас есть другие идеи?

Я надеюсь, что вы можете мне помочь. Заранее спасибо!

Ответы [ 3 ]

4 голосов
/ 09 июня 2009

ПОДХОД 1. Повторные запросы к общедоступной временной шкале не дадут вам все твиты, их слишком много. Вы получите 20 последних, и серверы твиттера будут кешировать их некоторое время, поэтому даже если вы продолжите использовать их, вы получите те же результаты. У них есть канал XMPP, который будет выдавать вам обновления, но вы должны подать заявку на доступ.

ПОДХОД 2 и ПОДХОД 3 - В любом из этих случаев вы полагаетесь на то, что пользователи предоставляют правдивую информацию. Ничто не мешает пользователю оставить это или лгать.

Независимо от вашего подхода, вы также должны следить за ограничениями API, если вы собираетесь делать запросы повторно. Подумайте о том, чтобы подать заявку на учетную запись в белом списке, которая даст вам 20 000 запросов в час вместо 100, которые все получают по умолчанию.

Тем не менее, 2 & 3 даст вам лучшие результаты, чем 1. Получение доступа к каналу xmpp "firehose" и использование местоположения или геокода, вероятно, даст вам наилучшие результаты. Вы, вероятно, никогда не получите 100% надежную и совершенную информацию, даже с этим, но это, вероятно, лучшее, что вы можете сделать.

Вы также можете посмотреть на gnip.com. У них есть доступ к пожарному шлангу в твиттере, и я верю, что они могут каким-то образом его отфильтровать и упаковать. Признаюсь, я не очень много знаю об их обслуживании, но это в моем списке задач, чтобы узнать. Возможно, вам придется заплатить за это.

1 голос
/ 12 июня 2009

Вы можете сделать комбинацию первых двух:

http://search.twitter.com/search?q=near%3ANYC+within%3A15mi (как показывает их пример) & geocode = what_NY_geocode_may_be

1 голос
/ 05 июня 2009

happn.in на самом деле очень просто:

У них разные пользователи для каждого города (то есть happn_in_ny), которые следуют за людьми в этом городе, и они просто используют временную шкалу друзей этого пользователя для анализа.

...