Twitter API:如何知道用户遵循的应用程序

时间:2011-01-29 12:45:16

标签: twitter

在电子邮件通知中,我们可以看到类似

的内容
<username> followed you using <appname>.

很棒。但有没有可能的方法来使用API​​了解应用程序名称?

1 个答案:

答案 0 :(得分:2)

我看了一下REST API,但是找不到任何支持它的东西。我的猜测是,这是一个可在API中使用的twitter.com功能。

我看到的最合乎逻辑的地方是 statuses / followers friendships / show 。在这两种情况下都没有确定性。检查我的帐户的关注者电子邮件,我发现多个使用应用程序的关注者(如PeopleBrowr和SocialOomph)来关注该帐户。在大多数案例中,最新status对象上的来源与用于关注我的应用名称相匹配,但这绝对不是一件肯定的事。

所以,直接回答你的问题,不,我不认为可以通过API完成(除非有一个没有文档的方法可以做到这一点。)

但是,我可以想办法获得这些信息。一种方法是设置接收以下通知的电子邮件帐户,以将副本转发到由自动过程检查的邮箱。当电子邮件显示时,解析它们以找到用于关注您的应用程序名称。

我使用以下正则表达式(在C#中)在电子邮件正文中查找应用程序的名称和URI:

Match m = Regex.Match(input, @"followed you using\s*<a[^""]+""(?<appUri>[^""]+)""[^>]+>(?<appName>\w*)</a>");

我使用m.Groups["appName"].Value提取应用程序名称,并使用m.Groups["appUri"].Value从匹配中提取URI。

为了将应用信息绑定到用户,我还必须找到屏幕名称:

Match m = Regex.Match(user, @"\(@<a[^>]+>(?<screenName>\w*)</a>\) is now following");

我使用m.Groups["screenName"].Value从匹配中提取值。