Tutoriel Twitter4J

Tutoriel Twitter4J
Dans cette leçon, nous utiliserons la bibliothèque Twitter4J pour exploiter les données de Twitter. Twitter traite les mégadonnées tous les jours, mais qu'est-ce que c'est réellement? Nous aurons un très court aperçu des mégadonnées avant de plonger dans les données miniers de Twitter.

Pourquoi la mienne Twitter?

Twitter est un endroit parfait pour extraire les données de. Voici quelques raisons pour lesquelles cela est vrai:

  • Tous les tweets sur Twitter sont publics
  • Les nouvelles données continuent de venir en temps réel, cela signifie que vous ne manquez jamais de données nouvelles pour tester
  • Twitter a une API intéressante pour les développeurs pour obtenir des données, ils sont également sympathiques
  • Les API fournies par Twitter fournissent des moyens faciles de retirer des tweets liés à un utilisateur spécifique ou à un mot / hashtag ou des tweets spécifiques dans un certain endroit

Commencer

Maintenant que nous avons justifié pourquoi nous utilisons cette plate-forme, commençons à collecter nos outils. Nous utiliserons Java 8 pour cette leçon, mais n'hésitez pas à utiliser les versions ci-dessus (bien que certains ajustements, pas les tweets, pourraient être nécessaires pour les utiliser).

Nous utiliserons une bibliothèque Java appelée Twitter4J pour nous connecter à l'API de Twitter.

Obtenir la clé de l'API Twitter

L'obtention de la clé de l'API Twitter est nécessaire pour accéder à ses données, car c'est ainsi que Twitter garde une trace des données et le nombre de demandes fait notre application sur Twitter.

Créons une application Twitter et obtenons les bonnes clés pour avancer.

  • Créer une application ici

Dans le formulaire ci-dessus, créez une application avec un nom unique, un nom de site Web (utilisez un site Web d'espace réservé si vous n'en avez pas) et une description du projet. Acceptez les termes et conditions (si vous le faites) et passez à la page suivante.

Une fois le projet créé, vous devriez voir une page avec l'en-tête suivant:

  • Dans les informations ci-dessous, cliquez sur l'onglet «Keys and Access Tokens» pour obtenir les informations suivantes:
  • Faites défiler vers le bas et cliquez sur «Générer des jetons d'accès» pour obtenir des informations inférieures:

Nous aurons besoin de ces valeurs plus tard pour qu'il viendra de garder cet onglet ouvert.

Début avec Twitter4J

Twitter4J est un non officiel Bibliothèque Java pour l'API Twitter. Avec Twitter4J, nous pouvons facilement intégrer notre application Java avec le service Twitter.

Dépendance Maven

Pour commencer, nous ajouterons une dépendance Maven appropriée à notre projet Java.


org.Twitter4J
Twitter4J-Core
4.0.6

Trouvez la dernière version de dépendance Maven ici.

Authentification

Nous avons ajouté la dépendance Maven requise maintenant. Il est temps que nous commencions à parler à l'API et à Twitter.

Pour démarrer la conversation, nous devons authentifier nos appels vers Twitter afin qu'il sache que seul un utilisateur connu accéde aux données. Pour cela, configurons nos clés que nous avons obtenues plus tôt.

Static final String Consumer_Key = "You-Key";
State final String Consumer_Secret = "Secret";
Strial final String Access_token = "Token";
Statique finale finale Access_Token_Secret = "Token-Secret";
Public Static Twitter getTwitteriNstance ()
ConfigurationBuilder CB = new ConfigurationBuilder ();
cb.setDebugeNable (vrai) Bashbash
.SetoAuthConsumerKey (Consumer_Key)
.SetoAuthConsumersecret (Consumer_Secret)
.setoAuthAccessToken (Access_token)
.setoAuthAccessTokenSeCret (Access_token_secret);
TwitterFactory TF = nouveau TwitterFactory (CB.construire());
retourner tf.getInstance ();

Exemple: montrant la chronologie

Dans cet exemple, nous montrerons des tweets les plus récents de la chronologie de l'utilisateur authentifié. Nous le ferons en utilisant l'instance d'état de l'objet de Twitter comme:

SHOWHOMETIMELINGE STATIQUE STATIQUE PRIVÉ (Twitter)
Liste status = null;
essayer
Status = Twitter.Gethométimeline ();
Système.dehors.println ("Affichage de la chronologie de la maison.");
pour (statut status: status)
Système.dehors.println (statut.getuser ().getName () + ":" + statut.getText ());
String url = "https: // twitter.com / "+ statut.getuser ().getScreenname () + "/ status /"
+ statut.getID ();
Système.dehors.println ("ci-dessus Tweet URL:" + URL);

catch (TwitterException e)
e.printStackTrace ();

Le résultat devrait ressembler à un tas de tweets aléatoires:

Suivre le lien vers le tweet vous amènera souvent au tweet lui-même. Suivre le lien du premier tweet nous donnerait le résultat suivant:

Outre le nom d'utilisateur et le texte du tweet, l'API Twitter a beaucoup d'informations à donner qui peuvent être déduites des méthodes disponibles suivantes:

statut.getSource ();
statut.getCreatEdat ();
statut.getFavainCount ();
statut.getGeolocation ();
statut.getlang ();
statut.getPlace ();
statut.getRetWeetCount ();
statut.getuser ().getBiggerProfileImageUrl ();
statut.getuser ().getemail ();
statut.getuser ().getFollowersCount ();
statut.getuser ().getFriendScount ();

Cela donne beaucoup d'informations liées au tweet et à l'utilisateur qui a publié le tweet. Il s'agit notamment de toutes les méthodes, n'hésitez pas à explorer toutes les méthodes disponibles.

Notez que ces attributs peuvent être extrêmement utiles si votre application dépend de plus de données.

Exemple: publier un tweet

Dans cet exemple, nous publierons simplement un nouveau tweet de notre code car l'utilisateur est déjà authentifié. Mettons un exemple de code ici:

Private Static void updatetweet (Twitter Twitter, String Tweet) lève TwitterException
Statut Status = Twitter.UpdateStatus (Tweet);
Système.dehors.println ("mis à jour avec succès le statut à [" + statut.getText () + "].");

La publication d'un nouveau tweet est aussi simple que celle.

Exemple: tweets d'un utilisateur spécifique

Il est très facile d'obtenir un autre tweets d'utilisateur, il suffit de passer un nom d'utilisateur et l'API renverra des tweets récents pour l'utilisateur.

Essayons de tirer les vingt tweets du compte Twitter @LinuxHint:

Voici l exemple de code:

Liste Status = Twitter.getUserTimeLine («LinuxHint»);
pour (statut status: status)
String fmt = "@" + statut.getuser ().getScreenname () + "-" + statut.getText ();
Système.dehors.println (fmt);

Lorsque vous exécutez ce programme, vous devriez voir des tweets pour Linuxhint.

Les applications populaires de ce type de données peuvent inclure:

  • Exécution de l'analyse sur des utilisateurs spécifiques et comment ils interagissent avec le monde
  • Trouver des influenceurs Twitter et analyser leurs tendances et interactions suiveur
  • Surveillance des changements dans les abonnés d'un utilisateur

Exemple: trouver des tweets à l'aide d'un mot-clé

Faisons un dernier exemple: obtenir les tweets les plus récents qui contiennent un mot-clé. Cela peut être extrêmement utile si vous souhaitez surveiller des sujets spécifiquement mentionnés dans le monde Twitter, ou même pour voir comment votre entreprise est mentionnée.

Disons que nous voulons voir comment Twitter a mentionné Linux:

// searchterm = Linux
private static void searchtweets (twitter twitter, string searchterter) lève la conception de Twitter
Query Query = New Query ("Source:" + SearchTerm);
Résultat de requête = Twitter.recherche (requête);
pour (statut statut: résultat.getTweets ())
Système.dehors.statut println ("@" +.getuser ().getScreenname () + ":" + statut.getText ());

Voici quelques façons pratiques d'utiliser ces informations:

  • Créez un graphique spatial sur l'endroit où votre entreprise est le plus mentionné dans le monde
  • Exécutez l'analyse des sentiments sur les tweets pour voir si l'opinion globale de votre entreprise est positive ou négative
  • Créez des graphiques sociaux des utilisateurs les plus populaires qui tweetent sur votre entreprise ou votre produit

Nous pouvons couvrir certains de ces sujets dans les futurs articles.

L'API de Twitter est extrêmement utile dans les applications d'exploration de données et peut fournir de nombreux informations sur l'opinion publique.