Jtwitter的用户特性问题


我的代码是:
     List<Status> list = new ArrayList<Status>();
     User user;
     Twitter twitter = new Twitter();       
     list = twitter.search(string); 
    for(int i=0; i<list.size();i++){
        user=list.get(i).getUser();
        System.out.print(i+1);
        System.out.println(list.get(i));
        System.out.println(list.get(i).getId());
        System.out.println(list.get(i).getUser());
        System.out.println(user.getId());
        System.out.println(user.getCreatedAt());
        System.out.println(user.getLocation());
        System.out.println(user.getFavoritesCount());
    }

问题是good打印状态、状态id和用户,但是user feature如何将用户id、位置等打印为null。我能做些什么来获取功能????

感谢回复

根据JTwitter API文档,调用默认构造函数创建一个没有用户的新实例。您需要使用Twitter.IHttpClient(这取决于Signpost)与Twitter进行身份验证以获取用户数据。

Twitter搜索方法很不寻常,因为它只返回一小部分用户信息。这是Twitter的一个限制。那是你无能为力的。

location等字段将为空。

您总是获得屏幕名称,这可以用于通过show()方法获取额外的信息。例如

Twitter twitter;
List<String> userNames; // make this list from user.screenName
List<User> fullUserInfo = twitter.users().show(userNames)

如果您有最新的JTwitter副本(http://www.winterwell.com/software/jtwitter.php),它都在javadoc中。

注意:如果Twitter负载过重,其他方法有时会返回User中缺少的字段。

最新更新