2016-09-14 99 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 –