使用Twitter4j获取超过100条最热门的推文

时间:2016-01-01 21:38:15

标签: java twitter twitter4j

您好我需要使用twitter4j API从Twitter获得100多条最热门推文! 我一直在尝试以下代码

     private static void getMostTrendingTweets(){
        try{
            // The factory instance is re-useable and thread safe.
            Twitter twitter = TwitterFactory.getSingleton();
            Query query = new Query("#google");
            query.setCount(500);
            QueryResult result = twitter.search(query);
            int c=0;
            for (Status status : result.getTweets()) {
                System.out.println("Status@\t" + status.getUser().getScreenName() + "\t:\t" + status.getText());
                c+=1;
            }
            System.out.println("SIZE=== "+c);
        }catch(Exception e){
            System.out.println(e);
        }
    }

但问题是它总是最多提供100条推文!

是我做错了还是不可能获得超过100条推文。我做错了什么?

也有人可以让我对任何其他Java库有任何想法,使用Java从Twitter获取推文!

提前致谢

1 个答案:

答案 0 :(得分:0)

搜索/推文端点被限制为最多100条推文,所以即使您可以在Twitter4j中将参数设置为500,Twitter API也不会超过100:< / p>

https://dev.twitter.com/rest/reference/get/search/tweets

您应该使用 trends / place 端点来获取趋势主题列表。同样,返回的趋势数量限制在50:

https://dev.twitter.com/rest/reference/get/trends/place

这是该端点上的Twitter4j文档:

http://twitter4j.org/javadoc/twitter4j/api/TrendsResources.html#getPlaceTrends(int)

因此,您的查询可能如下所示:

    int world = 1;
    Trends topTrends = getPlaceTrends(world);

看看Twitter图书馆,我只看到Twitter4j。但是,您可以搜索GitHub或其他源代码存储库以查看是否存在通常存在的其他存储库。在做出关于库的决定时,请记住,他们只能执行Twitter API允许的指定参数约束所允许的任务。

Twitter4j有API文档,但Twitter API文档是交叉检查参数,返回值和端点行为的最终资源:

https://dev.twitter.com/overview/documentation