2

几天前,我看到 happn.in 现在提供了一项服务,其中推文(twitter.com 上的消息)被分组并针对本地区域进行分析。对于几个城市,它们会为您提供趋势术语列表。

我知道你不能确切地知道他们是如何做到这一点的,但也许你可以帮助我,不过:我也怎么能做到这一点?我有几种方法。其中之一有用吗?

  • 方法 1

使用REST API public_timeline并每次浏览所有推文。列出模式和拟合位置,例如“纽约”和“NY”转到“纽约市”,“洛杉矶”和“LA”转到“洛杉矶”等。如果找不到已知的模式,你继续下一条推文。

  • 方法 2

使用搜索 API 地理编码功能,例如“ http://search.twitter.com/search.atom?geocode=##LAT##%2C##LONG##%2C##radius##km ”。不幸的是,我不知道结果是否可信/好!?

  • 方法 3

关注在其位置字段中具有城市名称的用户并分析 REST API Friends_timeline

你有其他想法吗?

我希望你能帮助我。提前致谢!

4

3 回答 3

4

方法 1 - 反复查询公共时间线不会给你所有的推文,太多了。你会得到 20 个最近的,推特服务器会缓存一段时间,所以即使你只是不断地敲击它,你也会得到相同的结果。他们有一个 XMPP 提要,可以将更新推送给你,但你必须申请访问。

方法 2 和方法 3 - 在这两种情况下,您都依赖用户提供真实信息。没有什么可以阻止用户将其遗漏或撒谎。

无论您采用何种方法,如果您要重复查询,您还必须注意 API 限制。考虑申请一个白名单帐户,该帐户将为您提供 20,000 个请求/小时,而不是每个人默认获得的 100 个请求。

也就是说,2 和 3 会给你比 1 更好的结果。访问“firehose”xmpp 提要并使用位置或地理编码可能会给你最好的结果。即使这样,您也可能永远无法获得 100% 可靠的完美信息,但这可能是您能做的最好的事情。

您也可以查看 gnip.com。他们可以访问 twitter firehose,我相信他们可以以某种方式为您过滤和重新打包它。我承认我对他们的服务了解不多,但我的待办事项清单上可以找到。您可能需要为此付费。

于 2009-06-08T20:35:47.830 回答
1

你可以做前两个的组合:

http://search.twitter.com/search?q=near%3ANYC+within%3A15mi(正如他们的例子所说)&geocode=whatever_NY_geocode_may_be

于 2009-06-12T02:34:02.237 回答
1

hapn.in 实际上非常简单:

他们对每个城市(即happn_in_ny)都有不同的用户,他们关注该城市的人,他们只是使用该用户的朋友时间线进行分析。

于 2009-06-04T20:34:21.010 回答