2012-06-08 3 views
7

Привет, кто-нибудь знает, как использовать потоковый API для C#? Поэтому, всякий раз, когда в моем аккаунте появляется новый твитт, он будет отражен в моей программе.Twitter Streaming API C#

ответ

-2

Я нашел хороший пример кода, использует потоковый API, здесь Twitterizer.

+1

На самом деле правильный url теперь: https://github.com/Twitterizer/Twitterizer, и проект кажется заброшенным прямо сейчас, хотя код есть, чтобы получить как есть. – manudea

2

Вот пример, который «Читает данные из API потоковой передачи Twitter и добавляет его в MSMQ. Второй процесс (в комплекте) читает из очереди, анализирует сообщение json и обновляет хранилище данных».

https://github.com/swhitley/TwitterStreamClient

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

Если вы ищете образец на основе OAuth, пожалуйста, используйте "AuthPack", которая обеспечивает .NET OAuth для Twitter, Facebook, LinkedIn и Google:

https://github.com/swhitley/AuthPack/tree/master/AuthPack

+0

Спасибо за быстрый ответ, но TwitterStreamClient не использует OAUTH2 для подключения, и я продолжаю получать <401> несанкционированное сообщение с сервера. – weikang

+0

проверить это https://dev.twitter.com/discussions/1307 – AvkashChauhan

+0

и этот: http://stackoverflow.com/questions/9847494/oauth-twitter-401-unauthorized – AvkashChauhan

11

До сих пор единственный надежного обертки Я нашел для этого в .Net земле TweetInvi. Попробуйте проигнорировать, что веб-сайт выглядит так, как будто он был спроектирован гиперактивным 10-летним (спасибо команде MS 'metro), фактическая библиотека очень хорошо разработана и прочная.

Предполагая, что, конечно, у вас есть соответствующие маркеры доступа (если не видите http://dev.twitter.com), пример того, как легко иметь и работает:

TwitterCredentials.SetCredentials(userToken,userTokenPrivate,apiKey,apiKeyPrivate); 
_userStream = Stream.CreateUserStream(); 
_userStream.TweetCreatedByFriend += (sender,args) => Console.WriteLine(args.Tweet.Text); 
_userStream.Start(); 

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

Я могу поручиться за эту библиотеку как надёжную - я использую ее для своего проекта CovertTweeter и не имел абсолютно никаких проблем с этим. Фактически доступ к потоковому API через TweetInvi был даже проще, чем многие кирпичные стены, которые я оставил, когда использовали REST-обертки, такие как Linq2Twitter и TweetSharp.

Смежные вопросы