我要求在给定日期或日期之间检索所有(我的意思是“全部”)。 但我写的代码给了我推文,但仅限于今天。我实现了分页,但没有帮助我得到多个页面,数据不冗余。但目前数据仍然有限。我只得到600-700条推文。我使用hasNext()并在6-7页后检索错误。 我对这个API很新,我对框架不太了解,所以请原谅我,如果我听起来真的很天真。
下面是代码:
Query search=new Query(searchKeyWord);
QueryResult results;
search.setCount(100);
//search.setMaxId(-1);
search.setSince("2013-01-01");
search.lang("en");
// search.setUntil("2013-05-01");
int i=0;
//TwitterFactory.getSingleton().search(search);//
do{
i++;
System.out.println("Page "+i);
results=tweety.search(search);
for(Status stats : results.getTweets()){
Text=stats.getText();
Text=Text.replace("\n", " ");
writer.append(stats.getUser().getScreenName()+";"+Text+";"+stats.getCreatedAt()+";"+"\n");
}
search=results.nextQuery();
} while(search!=null);
要求对大量数据进行文本挖掘,以便检索的推文越多越好。当然,我会限制从那时起和直到日期。但是,如果我设置较旧时间间隔的日期,则仍会仅在该时间间隔的最后一天检索推文。
我在某处错了吗?我需要添加或更改以获取所有推文吗?我知道速率限制。这是我收到有限数据的原因吗?
提前致谢。
答案 0 :(得分:0)
您应该同时使用搜索API和Streaming API。我也在使用Twitter数据进行数据挖掘,我正在做的是我只是实现了两个不同的应用来收集推文。你也可以做同样的事情。流API只需要一个Twitter帐户来进行令牌和身份验证。但是,您应该拥有更多的搜索API帐户。如果您有更多问题请告诉我。