2017-06-13 1 views
-1

Je vais faire une analyse sentimentale en utilisant le hashtag twitter et j'utilise Java pour ce projet. Comment puis-je coder Java pour rechercher un hashtag spécifique et afficher le texte?Trouver le hashtag Twitter avec Java

Voici ce que j'ai essayé:

public static void main(String[] args) throws TwitterException { 
    ConfigurationBuilder configurationBuider = new ConfigurationBuilder(); 
    configurationBuider.setDebugEnabled(true) 
      .setOAuthConsumerKey("") 
      .setOAuthConsumerSecret("") 
      .setOAuthAccessToken("") 
      .setOAuthAccessTokenSecret(""); 

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

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

}

Ce que je reçois est que le nom d'utilisateur et le texte sur le calendrier. Merci pour votre aide les gars.

Répondre

0

La question est pas tout à fait clair sur ce que vous voulez faire, mais voici mon interprétation:

Vous voulez rechercher les hashtags des 20 derniers messages twitter sur la ligne de temps pour un particulier hashtag. Si ce post contient le hashtag , vous voulez afficher l'utilisateur qui l'a posté et le texte de le message.

Ci-dessous est ce que je crois être un exemple de travail de cela.

public static void main(String[] args) throws TwitterException { 
ConfigurationBuilder configurationBuider = new ConfigurationBuilder(); 
configurationBuider.setDebugEnabled(true) 
     .setOAuthConsumerKey("") 
     .setOAuthConsumerSecret("") 
     .setOAuthAccessToken("") 
     .setOAuthAccessTokenSecret(""); 

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

// You can pull this in from user input, etc. 
String hashTagToSearchFor = "testme"; 

List<Status> status=twitter.getHomeTimeline(); 
for(Status s:status){ 
    HashtagEntity[] hashTags = s.getHashtagEntities(); 
    for (HashtagEntity hashtag : hashTags) { 
     if (hashtag.equals(hashTagToSearchFor)) { 
      System.out.println(s.getUser().getName() + ": " + s.getText()); 

      // Assuming all hashtags are unique... 
      continue; 
     } 
    } 
} 
} 

Veuillez me faire savoir si j'ai fait des hypothèses incorrectes et je serai heureux d'éditer ma réponse pour faire des ajustements.

+0

homme Merci. J'ai essayé votre code et il n'a rien montré. Le code fonctionne avec succès et je mets "sport" dans le Hashtag à chercher mais il n'y a pas de commentaire que l'utilisation de #sport apparaisse. –

+0

Avez-vous une application sociale avec laquelle nous pouvons vous parler plus facilement? –

+0

Je ne le fais malheureusement pas. La première chose que je ferais est d'imprimer toute la liste des hashtagenies pour chaque post et de voir ce qu'ils sont, car rappelez-vous: twitter.getHomeTimeline() ne renvoie que 20 messages. Vous pouvez explorer le javadoc twitter4j pour voir quelles autres méthodes sont disponibles pour obtenir des messages. –

0

Merci homme je l'ai déjà résolu en faisant cela Kylon Tyner

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