【问题标题】:Twitter Streaming API C#Twitter 流 API C#
【发布时间】:2012-06-12 05:21:47
【问题描述】:

您好,有人知道如何使用 C# 的流式处理 API 吗?因此,每当我的帐户中有新推文时,它都会反映在我的程序中。

【问题讨论】:

    标签: c# twitter oauth streaming


    【解决方案1】:

    到目前为止,我在 .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 项目并且完全没有问题。事实上,通过 TweetInvi 访问流 API 比我在使用 Linq2Twitter 和 TweetSharp 等 REST 包装器时遇到的许多砖墙还要容易。

    【讨论】:

      【解决方案2】:

      看看这篇文章:

      Streaming with New .NET HttpClient and HttpCompletionOption.ResponseHeadersRead

      你没有完整的实现,但你会明白的。

      【讨论】:

      • 很棒的文章。感谢发帖。
      【解决方案3】:

      这是一个示例,“从 Twitter 流 API 读取数据并将其添加到 MSMQ。第二个进程(包括)从队列中读取,解析 json 消息,并更新数据存储。”

      https://github.com/swhitley/TwitterStreamClient

      您可以更改上述问题以在更新数据存储时生成事件。在您的程序中,您可以订阅此事件来做任何您想做的事情。

      如果您正在寻找基于 OAuth 的示例,请使用“AuthPack”,它为 Twitter、Facebook、LinkedIn 和 Google 提供 .NET oAuth:

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

      【讨论】:

      • 感谢您的快速回复,但 TwitterStreamClient 没有使用 OAUTH2 进行连接,我不断收到来自服务器的 未经授权的消息。
      【解决方案4】:

      我找到了一个很好的使用流 API 的示例代码,这里是 Twitterizer

      【讨论】:

      猜你喜欢
      • 2018-01-07
      • 2011-06-11
      • 2019-09-23
      • 1970-01-01
      • 1970-01-01
      • 2011-12-26
      • 1970-01-01
      • 2016-04-18
      • 2018-03-13
      相关资源
      最近更新 更多