4

我正在做一个项目,我将从某个国家/地区获得所有推文,该国家在特定时间段内发布推文。之后我将对其进行数据挖掘(检查某个学生说了多少积极的想法等)。我想使用 Java 作为编程语言。但是我不知道如何开始这个项目。我进行了搜索,我知道有:

我可以在哪里开始在一段时间内从一个国家(如果它可以来自给定的州)获取所有推文。一些示例如下:您提供了一个用户名,如果它是公共个人资料,它会返回推文。我没有所有公开个人资料的列表。我应该处理这个问题以及如何处理?

有任何想法吗?

4

3 回答 3

7

如果你要使用 Java,Twitter4j 是你最好的选择。

但是你必须选择一种策略来检索你想要的推文。

您可以从 Twitter 本身获取数据,也可以从具有完整 Firehose 访问权限的数据提供者获取数据。DataSift 和 Gnip 是那些可以完全访问 Firehose 的提供程序。如果你想使用数据提供程序,DataSift 是要走的路,因为它自己的查询语言非常酷。

如果您自己检索数据。

  • 首先,如果您想实时获取推文,您需要使用 Twitter Streaming API,而 Twitter4j 使其非常易于使用。但不幸的是,Streaming API 不支持国家或语言过滤。您可以收听 Streaming API 进行搜索您注册的查询。

  • 您的第二个选项是 Search API。Twitter4j 也使使用 Search API 变得非常容易。Search API 支持更多的过滤选项。但是没有任何方法可以过滤国家/地区的推文。但不是根据语言过滤推文更多有用的方法来做到这一点。例如,过滤 en、fr 等的推文。

希望这可以帮助。

于 2012-07-21T22:52:38.087 回答
0

您想使用搜索 API。但是,API 不允许按国家/地区进行搜索,只能通过地理编码进行搜索。

于 2012-07-19T06:04:34.227 回答
0

在 Twitter4J

你可以得到这样的位置。

tweet.getUser().getLocation()

但它会获取用户的位置输入字段。

于 2014-01-12T12:29:41.643 回答