2015-11-23 3 views
5

Я пишу приложение, которое должно получать твиты конкретного пользователя Twitter. Поэтому мне нужно сначала вызвать имя экрана, а затем получить твиты. Я пробовал с приведенным ниже кодом.Как получить твиты конкретного пользователя с помощью twitter4j

package gethometimeline; 
import twitter4j.*; 
import java.util.*; 
import twitter4j.conf.ConfigurationBuilder; 
import twitter4j.Status; 
import twitter4j.Twitter; 
import twitter4j.TwitterException; 
import twitter4j.TwitterFactory; 

import java.util.List; 

public class GetUserTimeLine { 


    public static void main(String[] args) { 

        ConfigurationBuilder cb = new ConfigurationBuilder(); 
cb.setDebugEnabled(true) 
    .setOAuthConsumerKey("") 
    .setOAuthConsumerSecret("") 
    .setOAuthAccessToken("") 
    .setOAuthAccessTokenSecret(""); 
TwitterFactory tf = new TwitterFactory(cb.build()); 
Twitter twitter = tf.getInstance(); 



     try { 
      List<Status> statuses; 


      Scanner input = new Scanner(System.in); 
      System.out.println("Enter Twitter Screen Name: "); 
      String user = input.nextLine(); 

      if (args.length == 1) { 
       user = args[0]; 
       statuses = twitter.getUserTimeline(user); 
      } else { 
       user = twitter.verifyCredentials().getScreenName(); 
       statuses = twitter.getUserTimeline(); 
      } 
      System.out.println("Showing @" + user + "'s user timeline."); 
      for (Status status : statuses) { 
       System.out.println("@" + status.getUser().getScreenName() + " - " + status.getText()); 
      } 
     } catch (TwitterException te) { 
      te.printStackTrace(); 
      System.out.println("Failed to get timeline: " + te.getMessage()); 
      System.exit(-1); 
     } 
    } 

Запустив этот код, я получил твиты пользователя, чей потребительский ключ и секретный ключ пользователя я вхожу в конфигурацию. Но мне нужно получить твиты определенного имени экрана.

ответ

1

образец Реализация twitter4j для пользовательских твитов here. При запуске программы необходимо передать имя пользователя в качестве параметра командной строки. Я не вижу никаких других проблем с этим кодом