2009-10-30 6 views
1

Отказ от ответственности: У меня нет Twitter API опыт ни я не использовал Twitter до сегодняшнего дняTweet Contest логика (Twitter)

Я была поставлена ​​задача создания «чирикают конкурс» - если у кого есть опыт работы с Twitter API и/или сделал это в прошлом, я был бы признателен за любые полезные советы, которые у вас могут быть.

Таким образом, основные правила заключаются в том, что для того, чтобы пользователь мог участвовать в конкурсе, пользователь должен следить за твиттером конкурса и переписываться с определенным сообщением, например «только что вступил в конкурс за http://foo.com/contest».

Вопросы:

  1. Чтобы получить абитуриенты, я должен разобрать RSS-конкурса, http://twitter.com/statuses/user_timeline/21586418.rss, кажется, только список последних несколько постов, так что я, вероятно, придется взаимодействовать с API Twitter в чтобы получить все сообщения. Может ли кто-то рекомендовать документацию или страницу, которая охватывает это?

  2. Я не совсем уверен, следует ли хранить фактических пользователей в локальном XML-файле или полагаться на запрос API Twitter, если я их сохраню, у меня будет локальная копия пользователей кэш-памяти ... база данных будет быть overkill, и если бы я должен был их хранить, было бы лучше в XML-файле, верно?

  3. В связи с # 1, должен ли я анализировать точное сообщение, которое пользователь должен чистить, например, «только что вступил в конкурс», точную строку, когда я разбираю фид данных всех твитов? Или есть какая-то система мечения, которую я могу использовать?

  4. Относительно # 1, мне нужно будет определить, является ли пользователь последователем или нет, поэтому я не могу определить, что, анализируя запись/твит, мне нужно будет запросить идентификатор пользователя и получить статистику из людей, которых он/она следует?

+0

Кажется, что вы ответили на все свои вопросы. О, и apiwiki.twitter.com - впервые попал в google. Проводили ли вы какое-либо расследование? –

+2

@Kirk, зачем вам тратить 30 минут, исследуя его самостоятельно, когда вы можете потратить 2 минуты, прося здесь, 23 минуты есть бутерброд и 5 минут, читая консолидацию многих человеко-часов опыта людей, которые уже сделали это ? –

ответ

3

Вы можете искать URL, но лучшим подходом было бы использовать хэштегом:

just entered #supercoolcontest for http://foo.com/contest 

Вы можете искать числа случаев #supercoolcontest, которые содержат необходимый URL конкурса или любой другой другие ключевые слова, которые могут вам понадобиться. Это гарантирует, что пользователи не должны быть точными в тексте при ретрансляции, а также дают людям возможность говорить о конкурсе в общем виде, который можно отследить.

Вы можете вытащить все твиты с хэштегом помощью search API:

http://search.twitter.com/search.json?q=%23supercoolcontest 

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

Каждый раз, когда вы очищаете этот фид API (каждые n минут), вставляйте новых уникальных пользователей. Я бы использовал базу данных - не сложно или много времени, чтобы что-то встать со столом или двумя. Легче запросить позже.

Чтобы ответить на ваш последний вопрос, вам нужно сделать отдельный вызов API, чтобы определить, следует ли данному пользователю следовать за другим пользователем.

2

Я знаю, что это старый вопрос и, вероятно, не имеет отношения к медитеру, тем не менее я хочу прокомментировать, что теперь есть другой способ решить эту проблему с помощью технологии Streamming от Twitter. http://dev.twitter.com/pages/streaming_api Преимущество этого подхода в том, что вы говорите twitter для отправки всех твитов, которые выполняют некоторые условия сразу же после их создания.

С помощью API поиска вам нужно постоянно опробовать твиттер для новых твитов, и есть большая вероятность, что некоторые из них будут отсутствовать в результатах поиска; Между тем с помощью потокового API вы держите открытое соединение с твиттером и обрабатываете твиты по мере их появления, Twitter не гарантирует, что вы получите все твиты, которые отвечают условиям, но из моего опыта риск намного ниже.