2016-09-14 44 views
1

我想查找特定用户帐户上有特定词的所有推文。Twitter4j:显示在特定用户帐户上搜索词的所有推文

String searchWord = "cat"; 
String userAccount = "...."; 

ConfigurationBuilder cb = new ConfigurationBuilder(); 
cb.setDebugEnabled(true) 
     .setOAuthConsumerKey("xxxxx") 
     .setOAuthConsumerSecret("xxxxx") 
     .setOAuthAccessToken("xxxxx") 
     .setOAuthAccessTokenSecret("xxxxx"); 

TwitterFactory tf = new TwitterFactory(cb.build()); 
Twitter twitter = tf.getInstance(); 

这种方法给我帐户的所有鸣叫在String userAccount

List<Status> statusList = twitter.getUserTimeline(userAccount); 
for (Status status : statusList) { 
    System.out.println(status.getUser().getName() + " : " + status.getText()); 
} 

这种方法给我所有的鸣叫与包括搜索词,但随机用户:

Query query = new Query(searchWord); 
    QueryResult result = twitter.search(query); 
    for (Status status : result.getTweets()) { 
     System.out.println("@" + status.getUser().getScreenName() + ":" + status.getText()); 
} 

如何加入这两种方法在帐户userAccount中找到所有与单词相关的推文searchWord

回答

1

如果您想要获取特定用户的特定单词的所有推文,则应使用第一种方法,并仅显示包含所需单词的推文。换句话说:

String yourstring = "your text"; 
List<Status> statusList = twitter.getUserTimeline(userAccount); 
for (Status status : statusList) { 
    if(status.getText().toLowerCase().contains(yourstring)){ 
    System.out.println(status.getUser().getName() + " : " + status.getText()); 
    } 
} 
+0

它的工作,很棒,thx –

相关问题