嘿所有我正在开发一个java桌面应用程序。我必须使用twitter4j 3.0.5通过主题标签搜索推文。我对身份验证和搜索推文没有任何问题,但是存在一些问题: 我用topsy.com测试了我的搜索结果,我看到我收到的推文很少或没有推文。像#jobbingfest有大约500条推文,但我发现它是空的...... 最有趣的事情:Twitter.search(查询)文档说
Returns tweets that match a specified query. This method calls http://search.twitter.com/search.json
api会像这样返回一个json
{"errors": [{"message": "The Twitter REST API v1 is no longer active. Please migrate to API v1.1. https://dev.twitter.com/docs/api/1.1/overview.", "code": 68}]}
我有点困惑......为什么我能够获得推文,如果该资源不再可用?
我正在努力理解这个问题,但没有办法......我不得不在这里寻求帮助:p。
非常感谢! Licio。
PS。抱歉,也许我的英语不太好......
PPS。检索超过100条我用来做这件事的推文是对的吗?
List<MioStatus> listaStatus = null;
try {
listaStatus = new ArrayList<MioStatus>();
result = twitter.search(query);
while(result.nextQuery() != null){
for (Status status : result.getTweets()) {
if(status.isRetweet()){
listaStatus.add(new MioStatus(status.getId(), true, "RT " + status.getRetweetedStatus().getText(), status.getUser(), status.getGeoLocation(), status.getRetweetCount(), status.getCreatedAt()));
}else{
listaStatus.add(new MioStatus(status.getId(), true, status.getText(), status.getUser(), status.getGeoLocation(), status.getRetweetCount(), status.getCreatedAt()));
}
}
result = twitter.search(result.nextQuery());
}
答案 0 :(得分:0)
Twitter REST API v1不再有效。你无法使用它来获取tweeter的数据。 From the site:
现在不推荐使用REST API的第1版,它将停止运行 在接下来的几个月里。立即迁移到1.1版。
然而,API 1.1 supports JSON only,删除了XML,Atom和RSS支持。
再次在您的代码中,您在以下碎片中调用nextQuery()
两次(阅读评论):
while(result.nextQuery() != null){ // you are calling nextQuery() but
//you should call hasNext() boolean check
for (Status status : result.getTweets()) {
// do whatever you were doing
}
result = twitter.search(result.nextQuery());
// you are calling nextQuery() here, so no need to call
//in while conditional check
} // while ends here
答案 1 :(得分:0)
好吧我得到的东西......只是改变了推特的分配
Twitter twitter = TwitterFactory.getSingleton();
不要问我为什么,我正在使用mvc并且应该在地图中保存一个实例,但是...... 现在的问题是......“旧推文在哪里?”设置setSince()是没用的。 Twitter限制?