我是Hadoop的新手。我最近学到了很多关于hadoop的知识。我已经成功地使用了流API,并将twitter数据导入HDFS。现在我正在尝试使用搜索API,这样我就可以获得历史推文,但我在网上找不到任何例子。有很多流Api的例子,但找不到一个搜索Api的例子。
您没有提到编程语言,所以我假设您将使用Java。推荐使用Twitter4j库,其文档中有一些搜索示例,例如:
public class SearchTweets {
/**
* Usage: java twitter4j.examples.search.SearchTweets [query]
*
* @param args search query
*/
public static void main(String[] args) {
if (args.length < 1) {
System.out.println("java twitter4j.examples.search.SearchTweets [query]");
System.exit(-1);
}
Twitter twitter = new TwitterFactory().getInstance();
try {
Query query = new Query(args[0]);
QueryResult result;
do {
result = twitter.search(query);
List<Status> tweets = result.getTweets();
for (Status tweet : tweets) {
System.out.println("@" + tweet.getUser().getScreenName() + " - " + tweet.getText());
}
} while ((query = result.nextQuery()) != null);
System.exit(0);
} catch (TwitterException te) {
te.printStackTrace();
System.out.println("Failed to search tweets: " + te.getMessage());
System.exit(-1);
}
}
可在Github repo上获得:https://github.com/yusuke/twitter4j/blob/master/twitter4j-examples/src/main/java/twitter4j/examples/search/SearchTweets.java
此外,请确保您了解如何使用时间表。