嗨,有人知道如何使用 C# 的流 API 吗?因此,每当我的帐户中有新的推文时,它都会反映在我的程序中。
4 回答
到目前为止,我在.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 包装器时碰到的许多砖墙还要容易。
这是一个示例,“从 Twitter 流 API 读取数据并将其添加到 MSMQ。第二个进程(包括)从队列中读取,解析 json 消息,并更新数据存储。”
https://github.com/swhitley/TwitterStreamClient
您可以更改上述问题以在更新数据存储时生成事件。在您的程序中,您可以订阅此事件来做任何您想做的事情。
如果您正在寻找基于 OAuth 的示例,请使用为 Twitter、Facebook、LinkedIn 和 Google 提供 .NET oAuth 的“AuthPack”:
我在这里找到了一个很好的使用流 API 的示例代码Twitterizer。