Java

Tutoriel Twitter4J

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

Pourquoi exploiter Twitter?

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

Commencer

Maintenant que nous avons justifié pourquoi nous utilisons cette plateforme, commençons à rassembler 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 des tweets, puissent ê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é API Twitter

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

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

Dans le formulaire ci-dessus, créez une application avec un nom unique, un nom de site Web (utilisez un site Web fictif 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 :

Nous aurons besoin de ces valeurs plus tard, il sera donc préférable de garder cet onglet ouvert.

Premiers pas 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 allons ajouter la dépendance Maven appropriée à notre projet Java.


organisation.twitter4j
twitter4j-core
4.0.6

Trouvez la dernière version de dépendance de 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 à 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 précédemment.

static final String CONSUMER_KEY = "you-key";
chaîne finale statique CONSUMER_SECRET = "secret";
static final String ACCESS_TOKEN = "jeton";
static final String ACCESS_TOKEN_SECRET = "token-secret";
Twitter statique public getTwitterInstance()
ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setDebugEnabled(true)bashbash
.setOAuthConsumerKey(CONSUMER_KEY)
.setOAuthConsumerSecret(CONSUMER_SECRET)
.setOAuthAccessToken(ACCESS_TOKEN)
.setOAuthAccessTokenSecret(ACCESS_TOKEN_SECRET);
TwitterFactory tf = nouvelle TwitterFactory(cb.construire());
retour tf.getInstance();

Exemple : Affichage de la chronologie

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

show privé statique videHomeTimeline (Twitter twitter)
Lister statuts = nul ;
essayer
statuts = twitter.getHomeTimeline();
Système.en dehors.println("Affichage de la chronologie d'accueil.");
pour (Statut statut : statuts)
Système.en dehors.println(état.getUser().getName() + ":" + statut.getText());
URL de chaîne = "https://twitter.com/" + état.getUser().getScreenName() + "/status/"
+ statut.getId();
Système.en dehors.println("Au-dessus de l'URL du tweet : " + 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.getFavoriteCount();
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 posté le tweet. Celles-ci n'incluent pas 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 à partir 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 du statut = twitter.updateStatus(tweet);
Système.en dehors.println("Mise à jour réussie de l'état à [" + état.getText() + "].");

Publier un nouveau tweet est aussi simple que cela.

Exemple : Tweets d'un utilisateur spécifique

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

Essayons de récupérer les vingt derniers tweets du compte Twitter @linuxhint :

Voici l exemple de code:

Lister statuts = twitter.getUserTimeline ("linuxhint");
pour (Statut statut : statuts)
Chaîne fmt = "@" + état.getUser().getScreenName() + " - " + état.getText();
Système.en 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 d'analyses sur des utilisateurs spécifiques et comment ils interagissent avec le monde
  • Trouver des influenceurs Twitter et analyser les tendances et interactions de leurs abonnés
  • Suivi de l'évolution des followers d'un utilisateur

Exemple : Recherche de tweets à l'aide d'un mot-clé

Prenons un dernier exemple : obtenir les tweets les plus récents contenant 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 mentionne Linux :

//terme de recherche=Linux
Private static void searchTweets (Twitter twitter, String searchTerm) lève TwitterException
Query query = new Query("source:" + searchTerm);
Résultat de la requête = twitter.recherche (requête);
pour (Statut d'état : résultat.getTweets())
Système.en dehors.println("@" + état.getUser().getScreenName() + ":" + état.getText());

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

  • Créez un graphique spatial sur les endroits où votre entreprise est le plus mentionnée dans le monde
  • Exécutez une 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 pourrons couvrir certains de ces sujets dans de futurs articles.

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

Comment changer les boutons gauche et droit de la souris sur un PC Windows 10
Il est tout à fait normal que tous les appareils de souris d'ordinateur soient conçus de manière ergonomique pour les droitiers. Mais il existe des so...
Émulez les clics de souris en survolant à l'aide de la souris sans clic dans Windows 10
L'utilisation d'une souris ou d'un clavier dans la mauvaise posture d'une utilisation excessive peut entraîner de nombreux problèmes de santé, notamme...
Ajoutez des gestes de souris à Windows 10 à l'aide de ces outils gratuits
Ces dernières années, les ordinateurs et les systèmes d'exploitation ont considérablement évolué. Il fut un temps où les utilisateurs devaient utilise...