2010-05-08 5 views
1

J'utilise Twitter4J depuis un certain temps maintenant, mais je n'arrive pas à trouver cette fonctionnalité particulière. Je veux être en mesure de rechercher un nom, et quand l'utilisateur est sur twitter, je veux récupérer des informations de base telles que les tweets, les followers (comme vous pouvez accéder via http) - mais comment faire est en Twitter4J? Ni les exemples de code ni la source ne pourraient m'aider.Twitter4J - Recherche des détails de profil sans se connecter

Merci,

William van Doorn

+0

Merci pour avoir ajouter l'étiquette, Femeraf, je ne pouvais pas car je n'ai pas encore 250+ réputation. – wvd

Répondre

3

Regardez les suivantes: Twitter4J.api.UserMethods qui a les méthodes que vous cherchez. La classe Twitter l'implémente directement.

+0

Merci, et je suppose que je veux .searchUsers() ici? Est-ce que cela fonctionne comme je l'espère? EDIT: Comment accéder à ces méthodes? Je ne peux pas faire une instance et ils ne sont pas statiques. – wvd

+0

wvd c'est l'interface, donc évidemment vous ne pouvez pas l'instancier. Voir mes modifications – Woot4Moo

+0

Je ne vous comprends pas? Pourriez-vous me donner un exemple rapide de la façon de l'utiliser. – wvd

2

Je pense que vous devriez utiliser twitter4j bibliothèque, obtenir Access Token puis créer l'objet de twitter et puis appelez showuser() il retournera objet utilisateur puis avec l'aide de l'objet utilisateur vous obtiendrez toutes les informations de connexion utilisateur je vais donnez un exemple de code à vous.

AccessToken a = new AccessToken(token,secret); 
    Twitter twitter = new TwitterFactory().getInstance(); 
    twitter.setOAuthConsumer(Constants.CONSUMER_KEY, Constants.CONSUMER_SECRET); 
    twitter.setOAuthAccessToken(a); 

    int i=twitter.getId(); 
    User u=twitter.showUser(i); 
    System.out.println("user name"+u.getName()); 
+0

jusqu'à nom ok qu'en est-il de l'image de profil ou de l'image d'avatar pour cet utilisateur quelle méthode avons-nous utilisée? – blackjack

0

Mon pom.xml

... 
    <dependencies> 
     <dependency> 
      <groupId>org.twitter4j</groupId> 
      <artifactId>twitter4j-core</artifactId> 
      <version>[4.0,)</version> 
     </dependency> 
    </dependencies> 
... 

Mon test de classe

import twitter4j.Twitter; 
    import twitter4j.TwitterException; 
    import twitter4j.TwitterFactory; 
    import twitter4j.User; 
    import twitter4j.conf.ConfigurationBuilder; 

    public final class GetAccountSettings { 

     private final String twitter_consumer_key = "oKu1emQJUGArI6kFNXNTCZ111"; 
     private final String twitter_consumer_secret = "g3EzljGP91AuqjBtIRjGFbKVEAg5cpxH96D6rWIgk4MbhK5111"; 
     private final static String oauth_token = "2847960911-LYoKllWcTo3VxZMdcLktWDPbLaeOywwrkf2W111"; 
     private final static String oauth_token_secret = "JoCajDpKvvzzOfsfQpar8aqIDmspyrGehvdj3YsCAp111"; 

     public static void main(String[] args) { 
     try { 

      GetAccountSettings getAccountSettings = new GetAccountSettings(); 

      // Twitter Conf. 
      ConfigurationBuilder cb = new ConfigurationBuilder(); 
      cb.setDebugEnabled(true).setOAuthConsumerKey(getAccountSettings.twitter_consumer_key).setOAuthConsumerSecret(getAccountSettings.twitter_consumer_secret) 
       .setOAuthAccessToken(getAccountSettings.oauth_token).setOAuthAccessTokenSecret(getAccountSettings.oauth_token_secret); 

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

      User user = twitter.showUser("MR_Camaleon"); 
      System.out.println("\n *************************** INFORMATION TWITTER PROFILE " + user.getScreenName() + " ************************* \n\n"); 
      System.out.println("  Id:     " + user.getId() + " \n"); 
      System.out.println("  Screen name:   " + user.getScreenName() + " \n"); 
      System.out.println("  Name:     " + user.getName() + " \n"); 
      System.out.println("  Description:   " + user.getDescription() + " \n"); 
      System.out.println("  Image profile:   " + user.getProfileImageURL() + " \n"); 
      System.out.println("  Follorwers:   " + user.getFollowersCount() + " \n"); 
      System.out.println("  Friends:    " + user.getFriendsCount() + " \n"); 
      System.out.println("  Created date:   " + user.getCreatedAt() + " \n"); 
      System.out.println("  Language:    " + user.getLang() + " \n"); 
      System.out.println("  Time zone:    " + user.getTimeZone() + " \n\n"); 
      System.out.println(" ******************************************************************************************************"); 

     } catch (TwitterException te) { 
      te.printStackTrace(); 
      System.out.println("Failed to get account settings: " + te.getMessage()); 
      System.exit(-1); 
     } 
     } 
    } 
Questions connexes