2014-11-22 22 views
1

我想获取建议或自动完成Twitter的朋友。这是我的代码:Twitter4j朋友搜索没有排序的RELvency

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

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