Java

Twitter4J-Tutorial

Twitter4J-Tutorial
In dieser Lektion verwenden wir die Twitter4J-Bibliothek, um Daten von Twitter zu minen. Twitter beschäftigt sich jeden Tag mit Big Data, aber was ist das eigentlich?? Wir geben einen sehr kurzen Überblick über Big Data, bevor wir uns mit Mining-Daten von Twitter befassen.

Warum mein Twitter?

Twitter ist ein perfekter Ort, um Daten abzurufen. Hier sind einige Gründe, warum dies wahr ist:

Einstieg

Nachdem wir nun begründet haben, warum wir diese Plattform verwenden, fangen wir an, unsere Tools zu sammeln. Wir werden Java 8 für diese Lektion verwenden, aber Sie können die obigen Versionen verwenden (obwohl einige Optimierungen, keine Tweets, erforderlich sind, um sie zu verwenden).

Wir werden eine Java-Bibliothek namens Twitter4J verwenden, um eine Verbindung zur Twitter-API herzustellen.

Twitter-API-Schlüssel erhalten

Der Erhalt des Twitter-API-Schlüssels ist erforderlich, um auf seine Daten zuzugreifen, da Twitter auf diese Weise die Daten und die Anzahl der Anfragen, die unsere Anwendung an Twitter sendet, nachverfolgt.

Lassen Sie uns eine Twitter-App erstellen und die richtigen Schlüssel erhalten, um voranzukommen.

Erstellen Sie im obigen Formular eine Anwendung mit einem eindeutigen Namen, einem Website-Namen (verwenden Sie eine Platzhalter-Website, wenn Sie keine haben) und einer Projektbeschreibung. Akzeptieren Sie die Allgemeinen Geschäftsbedingungen (falls Sie dies tun) und fahren Sie mit der nächsten Seite fort.

Sobald das Projekt erstellt wurde, sollten Sie eine Seite mit folgendem Header sehen:

Wir werden diese Werte später benötigen, daher ist es besser, diese Registerkarte geöffnet zu lassen.

Erste Schritte mit Twitter4J

Twitter4J ist ein inoffiziell Java-Bibliothek für die Twitter-API. Mit Twitter4J können wir unsere Java-Anwendung einfach in den Twitter-Dienst integrieren.

Maven-Abhängigkeit

Zu Beginn fügen wir unserem Java-Projekt die entsprechende Maven-Abhängigkeit hinzu.


org.twitter4j
twitter4j-core
4.0.6

Hier finden Sie die neueste Version der Maven-Abhängigkeit.

Authentifizierung

Wir haben jetzt die erforderliche Maven-Abhängigkeit hinzugefügt. Es ist Zeit, dass wir mit der API und Twitter sprechen.

Um die Konversation zu starten, müssen wir unsere Anrufe bei Twitter authentifizieren, damit es weiß, dass nur ein bekannter Benutzer auf die Daten zugreift. Lassen Sie uns dafür unsere Schlüssel einrichten, die wir zuvor erhalten haben.

static final String CONSUMER_KEY = "you-key";
static final String CONSUMER_SECRET = "secret";
static final String ACCESS_TOKEN = "token";
static final String ACCESS_TOKEN_SECRET = "token-secret";
öffentliches statisches Twitter getTwitterInstance()
ConfigurationBuilder cb = new ConfigurationBuilder();
cb.setDebugEnabled(true)bashbash
.setOAuthConsumerKey(CONSUMER_KEY)
.setOAuthConsumerSecret(CONSUMER_SECRET)
.setOAuthAccessToken(ACCESS_TOKEN)
.setOAuthAccessTokenSecret(ACCESS_TOKEN_SECRET);
TwitterFactory tf = neue TwitterFactory(cb.bauen());
zurück tf.bekomme Instanz();

Beispiel : Zeitleiste anzeigen

In diesem Beispiel zeigen wir einige der neuesten Tweets aus der Timeline des authentifizierten Benutzers. Dazu verwenden wir die Objektstatusinstanz von Twitter als:

privat statisch void showHomeTimeline(Twitter twitter)
Aufführen Status = null;
Versuchen
Status = twittern.getHomeTimeline();
System.aus.println("Home-Timeline anzeigen.");
für (Statusstatus: Status)
System.aus.println(status.getUser().getName() + ":" + Status.getText());
String-URL= "https://twitter.com/" + Status.getUser().getScreenName() + "/status/"
+ Status.getId();
System.aus.println("Über Tweet-URL: " + URL);

catch (TwitterException e)
e.printStackTrace();

Das Ergebnis sollte wie ein Haufen zufälliger Tweets aussehen:

Wenn Sie dem Link zum Tweet folgen, gelangen Sie oft zum Tweet selbst. Wenn wir dem Link aus dem ersten Tweet folgen, erhalten wir folgendes Ergebnis:

Abgesehen vom Benutzernamen und dem Tweet-Text hat die Twitter-API viele Informationen zu liefern, die aus folgenden verfügbaren Methoden abgeleitet werden können:

Status.getSource();
Status.getCreatedAt();
Status.getFavoriteCount();
Status.getGeoLocation();
Status.getLang();
Status.getPlace();
Status.getRetweetCount();
Status.getUser().getBiggerProfileImageURL();
Status.getUser().getEmail();
Status.getUser().getFollowersCount();
Status.getUser().getFriendsCount();

Dies gibt viele Informationen über den Tweet und den Benutzer, der den Tweet gepostet hat. Diese umfassen nicht alle Methoden, zögern Sie nicht, alle verfügbaren Methoden zu erkunden.

Beachten Sie, dass diese Attribute äußerst nützlich sein können, wenn Ihre Anwendung von mehr Daten abhängt.

Beispiel: Posten Sie einen Tweet

In diesem Beispiel posten wir einfach einen neuen Tweet aus unserem Code, da der Benutzer bereits authentifiziert ist. Lassen Sie uns hier einen Beispielcode einfügen:

private statische void updateTweet(Twitter twitter, String tweet) wirft TwitterException
Statusstatus = Twitter.updateStatus(Tweet);
System.aus.println("Status erfolgreich aktualisiert auf [" + Status.getText() + "].");

So einfach ist es, einen neuen Tweet zu posten.

Beispiel: Tweets von einem bestimmten Benutzer

Es ist sehr einfach, Tweets eines anderen Benutzers zu erhalten, übergeben Sie einfach einen Benutzernamen und die API gibt einige aktuelle Tweets für den Benutzer zurück.

Versuchen wir, die neuesten zwanzig Tweets vom Twitter-Account @linuxhint abzurufen:

Hier ist der Beispielcode:

Aufführen Status = twittern.getUserTimeline("linuxhint");
für (Statusstatus: Status)
String fmt = "@" + Status.getUser().getScreenName() + " - " + Status.getText();
System.aus.println(fmt);

Wenn Sie dieses Programm ausführen, sollten Sie Tweets für Linux sehenHint.

Beliebte Anwendungen dieser Art von Daten können sein:

  • Ausführen von Analysen zu bestimmten Benutzern und wie sie mit der Welt interagieren
  • Finden Sie Twitter-Influencer und analysieren Sie ihre Follower-Trends und -Interaktionen
  • Überwachung der Änderungen bei den Followern eines Benutzers

Beispiel: Tweets mithilfe eines Keywords finden

Lassen Sie uns ein letztes Beispiel machen: Abrufen der neuesten Tweets, die ein Schlüsselwort enthalten. Dies kann äußerst nützlich sein, wenn Sie speziell erwähnte Themen in der Twitter-Welt überwachen oder sogar sehen möchten, wie Ihr Unternehmen erwähnt wird.

Nehmen wir an, wir wollen sehen, wie Twitter Linux erwähnt:

//searchTerm=Linux
privat statisch void searchTweets(Twitter twitter, String searchTerm) wirft TwitterException
Query query = new Query("source:" + searchTerm);
Ergebnis der Abfrage = twitter.Suchanfrage);
für (Statusstatus : Ergebnis.getTweets())
System.aus.println("@" + Status.getUser().getScreenName() + ":" + Status.getText());

Hier sind einige praktische Möglichkeiten, wie Sie diese Informationen verwenden können:

  • Erstellen Sie ein räumliches Diagramm, in dem Ihr Unternehmen weltweit am häufigsten erwähnt wird
  • Führen Sie eine Stimmungsanalyse für Tweets durch, um zu sehen, ob die Gesamtmeinung Ihres Unternehmens positiv oder negativ ist
  • Erstellen Sie ein soziales Diagramm der beliebtesten Benutzer, die über Ihr Unternehmen oder Ihr Produkt twittern

Einige dieser Themen können wir in zukünftigen Artikeln behandeln.

Die API von Twitter ist in Data-Mining-Anwendungen immens nützlich und kann umfassende Einblicke in die öffentliche Meinung liefern.

Kostenlose und Open-Source-Spiele-Engines für die Entwicklung von Linux-Spielen
Dieser Artikel behandelt eine Liste von kostenlosen und Open-Source-Spiele-Engines, die für die Entwicklung von 2D- und 3D-Spielen unter Linux verwend...
Shadow of the Tomb Raider für Linux Tutorial
Shadow of the Tomb Raider ist die zwölfte Erweiterung der Tomb Raider-Reihe – ein Action-Adventure-Franchise von Eidos Montrealdos. Das Spiel wurde vo...
So steigern Sie die FPS unter Linux?
FPS steht für Bilder pro Sekunde. Die Aufgabe von FPS besteht darin, die Bildrate bei Videowiedergaben oder Spielleistungen zu messen. In einfachen Wo...