Twitter4j的朋友搜索没有按订单排序

时间:2014-11-22 10:13:53

标签: twitter twitter4j

我正在尝试为Twitter好友获取建议或自动填充功能。这是我的代码:

ConfigurationBuilder builder = new ConfigurationBuilder();
    builder.setOAuthConsumerKey(PropertiesLoader.getProperty("twitter_consumer_key"));
    builder.setOAuthConsumerSecret(PropertiesLoader.getProperty("twitter_consumer_secret"));
    Configuration configuration = builder.build();
    TwitterFactory factory = new TwitterFactory(configuration);
    Twitter twitter = factory.getInstance();

    twitter.setOAuthAccessToken(new AccessToken("[TOKEN]", "[SECRET]"));
    ResponseList<twitter4j.User> users = null;
    try {
        users = twitter.searchUsers("sah", 1);
    } catch (TwitterException e) {
        e.printStackTrace();
    }

    System.out.println(users);

这会返回用户建议列表。但它不是按相关性排序的。当我在search.twitter.com上搜索时,它首先被命令为匹配查询的朋友,然后是未知的人。但这里没有这样订购。我如何使用它来正确订购?

1 个答案:

答案 0 :(得分:1)

documentation for User Search表示有方式订购结果。在这方面,API与网站不同。

也就是说,有一种方法可以手动对返回的用户进行排序。您返回的结果集应包含实体。

在该实体中,您会看到一些字段,例如

"friends_count": 28,
"profile_background_image_url": "http://a0.twimg.com/656932170/urr667rpqtg6l7psohaf.png",
"default_profile_image": false,
"statuses_count": 338,
"screen_name": "example",
"following": true

最后一个"following": true显示请求用户正在关注该用户。

如果您对关系的性质有任何疑问,可以使用friendships/show