特定用户使用twitter4j java api获取推文

时间:2015-04-08 07:30:28

标签: twitter twitter4j

我想通过输入userId来获取特定用户的推文。

我可以通过以下方式搜索文字:

     Query query = new Query("Hi");
        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); 

但是如何通过输入特定userId来搜索推文,是否有任何直接方法或我必须应用逻辑?

我在尝试:

            Status status = twitter.showStatus(id);
            if (status != null){
                System.out.println("@" + status.getUser().getScreenName()
                + " - " + status.getText());}

其中id是userId,但是通过这样做,我收到错误:

  

无法搜索推文:404:请求的URI无效或   请求的资源(例如用户)不存在。还退了   当请求的方法不支持请求的格式时。   消息 - 找不到该ID的状态。代码 - 144

有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

使用Twitter API,您可以从用户那里获得大约3200条推文,为此,您可以从特定用户获取时间线,查看这些问题

顺便说一句,您收到该错误的原因是您twitter.showStatus(id);使用的是userid,您需要致电twitter.showUser(id)并且您不会收到该错误