Jáva

Twitter4J bemutató

Twitter4J bemutató
Ebben a leckében a Twitter4J könyvtár segítségével fogjuk bányászni a Twitter adatait. A Twitter mindennap foglalkozik a Big Data-val, de mi is ez valójában? Nagyon rövid áttekintésünk lesz a Big Data-ról, mielőtt belevetnénk magunkat a Twitter bányászati ​​adataiba.

Miért az én Twitterem?

A Twitter tökéletes hely az adatok lekérésére. Íme néhány ok, amiért ez igaz:

Elkezdeni

Most, hogy igazoltuk, miért használjuk ezt a platformot, kezdjük el gyűjteni az eszközeinket. Ehhez a leckéhez a Java 8-at fogjuk használni, de nyugodtan használja a fenti verziókat (bár ezek használatához szükség lehet néhány csípésre, nem pedig tweetelésre).

A Twitter4J nevű Java könyvtárat fogjuk használni a Twitter API-hoz való csatlakozáshoz.

Twitter API kulcs megszerzése

Az adatokhoz való hozzáféréshez a Twitter API kulcs beszerzése szükséges, mivel a Twitter így követi nyomon az adatokat és az alkalmazásunk által a Twitteren végrehajtott kérések számát.

Hozzunk létre egy Twitter alkalmazást, és szerezzük be a megfelelő kulcsokat a továbblépéshez.

A fenti űrlapban hozzon létre egy alkalmazást egyedi névvel, webhelynévvel (használjon helyőrző webhelyet, ha még nincs), és egy projektleírást. Fogadja el az Általános Szerződési Feltételeket (ha mégis megteszi), és folytassa a következő oldalon.

A projekt létrehozása után látnia kell egy oldalt a következő fejléccel:

Később szükségünk lesz ezekre az értékekre, így jobb lesz ezt a lapot nyitva tartani.

A Twitter4J használatának megkezdése

A Twitter4J egy nem hivatalos Java könyvtár a Twitter API-hoz. A Twitter4J segítségével egyszerűen integrálhatjuk Java alkalmazásunkat a Twitter szolgáltatással.

Maven-függőség

Először hozzáadjuk a megfelelő Maven Dependency-t Java-projektünkhöz.


org.twitter4j
twitter4j-core
4.0.6

A legfrissebb maven függőségi verziót itt találja.

Hitelesítés

Most hozzáadtuk a szükséges Maven-függőséget. Itt az ideje, hogy elkezdjünk beszélgetni az API-val és a Twitter-szel.

A beszélgetés megkezdéséhez hitelesítenünk kell a Twitterre irányuló hívásainkat, hogy tudják, hogy csak egy ismert felhasználó fér hozzá az adatokhoz. Ehhez állítsuk be a korábban megszerzett kulcsokat.

statikus végső karakterlánc CONSUMER_KEY = "te-kulcs";
statikus végső karakterlánc CONSUMER_SECRET = "titkos";
statikus végső karakterlánc ACCESS_TOKEN = "token";
statikus végső karakterlánc ACCESS_TOKEN_SECRET = "token-secret";
nyilvános statikus 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 = új TwitterFactory (cb.épít());
return tf.getInstance ();

Példa: Az idővonal megjelenítése

Ebben a példában néhány legújabb tweetet mutatunk be a hitelesített felhasználó idővonaláról. Ezt a Twitter objektum állapota példányának használatával fogjuk megtenni:

privát statikus void showHomeTimeline (Twitter twitter)
Lista állapotok = null;
próbáld ki
állapotok = twitter.getHomeTimeline ();
Rendszer.ki.println ("Az otthoni idővonal megjelenítése.");
for (Állapot állapota: állapotok)
Rendszer.ki.println (állapot.getUser ().getName () + ":" + állapot.getText ());
Karakterlánc URL = "https: // twitter.com / "+ állapot.getUser ().getScreenName () + "/ status /"
+ állapot.getId ();
Rendszer.ki.println ("tweet URL felett:" + url);

catch (TwitterException e)
e.printStackTrace ();

Az eredménynek egy csomó véletlenszerű tweetnek kell kinéznie:

A tweetre mutató link követése gyakran magához a tweethez vezet. Az első tweet linkjét követve a következő eredményt kapjuk:

A felhasználónéven és a tweet szövegén kívül a Twitter API sok információt megad, amelyet a következő rendelkezésre álló módszerekből lehet következtetni:

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

Ez rengeteg információt ad a tweetről és a tweetet közzétevő felhasználóról. Ezek nem minden módszert tartalmaznak, bátran fedezze fel az összes rendelkezésre álló módszert.

Ne feledje, hogy ezek az attribútumok rendkívül hasznosak lehetnek, ha az alkalmazás több adattól függ.

Példa: Tegyen közzé egy tweetet

Ebben a példában egyszerűen új tweetet küldünk a kódunkból, mivel a felhasználó már hitelesítve van. Tegyünk ide egy mintakódot:

privát statikus void updateTweet (Twitter twitter, String tweet) dobja a TwitterException
Állapot állapota = twitter.updateStatus (tweet);
Rendszer.ki.println ("Sikeresen frissítette az állapotot [" + állapotra.getText () + "].");

Új tweet közzététele ilyen egyszerű.

Példa: Egy adott felhasználó tweetei

Nagyon könnyű újabb felhasználó tweeteit kapni, csak adjon meg egy felhasználónevet, és az API néhány friss tweetet küld a felhasználónak.

Próbáljuk meg letölteni a legfrissebb húsz tweetet a @linuxhint twitter fiókból:

Itt van a minta kód:

Lista állapotok = twitter.getUserTimeline („linuxhint”);
for (Állapot állapota: állapotok)
Karakterlánc fmt = "@" + állapot.getUser ().getScreenName () + "-" + állapot.getText ();
Rendszer.ki.println (fmt);

A program futtatásakor látnia kell a Tweets for LinuxHint alkalmazást.

Az ilyen típusú adatok népszerű alkalmazásai a következők lehetnek:

  • Elemzés futtatása konkrét felhasználókra, és azok interakciójára a világgal
  • A Twitter-befolyásolók megkeresése és követő trendjeik és interakcióik elemzése
  • A felhasználó követői változásainak figyelemmel kísérése

Példa: Tweetek keresése kulcsszó használatával

Tegyünk egy utolsó példát: A legújabb kulcsszavakat tartalmazó tweetek beszerzése. Ez rendkívül hasznos lehet, ha figyelemmel akarja kísérni a Twitter világában kifejezetten említett témákat, vagy akár látni szeretné, hogyan említik vállalkozását.

Tegyük fel, hogy szeretnénk látni, hogy a Twitter miként emlegeti a Linuxot:

// searchTerm = Linux
privát statikus void searchTweets (Twitter twitter, String searchTerm) dobja a TwitterException
Lekérdezés = új lekérdezés ("forrás:" + searchTerm);
QueryResult eredmény = twitter.keresés (lekérdezés);
for (Állapot állapota: eredmény.getTweets ())
Rendszer.ki.println ("@" + állapot.getUser ().getScreenName () + ":" + állapot.getText ());

Íme néhány praktikus módszer az információk felhasználására:

  • Hozzon létre egy térbeli grafikont arról, hogy hol említik vállalatát a világon a legjobban
  • Futtassa a hangulatelemzést a tweeteken, hogy lássa, pozitív-e vagy negatív-e a vállalat általános véleménye
  • Hozzon létre közösségi grafikonokat a legnépszerűbb felhasználókról, akik tweetelnek a vállalatáról vagy termékéről

Ezekről a témákról a későbbi cikkekben foglalkozhatunk.

A Twitter API-ja rendkívül hasznos az adatbányászati ​​alkalmazásokban, és hatalmas betekintést nyújthat a közvéleménybe.

Csata a Wesnoth bemutatóért
A Battle for Wesnoth az egyik legnépszerűbb nyílt forráskódú stratégiai játék, amelyet jelenleg játszhatsz. Ez a játék nem csak nagyon hosszú ideje fe...
0 A.D. Bemutató
A sok stratégiai játék közül 0 A.D. átfogó címként és nagyon mély, taktikus játékként képes kiemelkednie annak ellenére, hogy nyílt forráskódú. A játé...
Unity3D bemutató
Bevezetés a Unity 3D-be Az Unity 3D egy erőteljes játékfejlesztő motor. Ez több platformon keresztül lehetővé teszi játékok, mobil, webes, asztali és ...