Jawa

Tutorial Twitter4J

Tutorial Twitter4J
Dalam pelajaran ini, kami akan menggunakan perpustakaan Twitter4J untuk melombong data dari Twitter. Twitter berurusan dengan Big Data setiap hari, tetapi sebenarnya? Kami akan mempunyai gambaran keseluruhan yang sangat pendek mengenai Big Data sebelum menyelidiki data perlombongan dari Twitter.

Mengapa saya melayari Twitter?

Twitter adalah tempat yang tepat untuk menarik data. Berikut adalah beberapa sebab mengapa ini berlaku:

Bermula

Sekarang kita telah membenarkan mengapa kita menggunakan platform ini, mari mula mengumpulkan alat kami. Kami akan menggunakan Java 8 untuk pelajaran ini tetapi jangan ragu untuk menggunakan versi di atas (walaupun beberapa tweak, bukan tweet, mungkin diperlukan untuk menggunakannya).

Kami akan menggunakan perpustakaan Java yang disebut Twitter4J untuk menyambung ke API Twitter.

Mendapatkan kunci API Twitter

Mendapatkan kunci API Twitter diperlukan untuk mengakses datanya kerana ini adalah bagaimana Twitter melacak data dan jumlah permintaan yang dibuat oleh aplikasi kami ke Twitter.

Mari buat aplikasi Twitter dan dapatkan kunci yang betul untuk terus maju.

Dalam bentuk di atas, buat Aplikasi dengan nama unik, nama laman web (gunakan laman web tempat letak jika anda tidak memilikinya), dan keterangan projek. Terima terma dan syarat (jika anda melakukannya) dan terus ke halaman seterusnya.

Setelah projek dibuat, anda akan melihat halaman dengan tajuk berikut:

Kami memerlukan nilai-nilai ini kemudian jadi lebih baik menyimpan tab ini terbuka.

Bermula dengan Twitter4J

Twitter4J adalah tidak rasmi Perpustakaan Java untuk API Twitter. Dengan Twitter4J, kita dapat dengan mudah mengintegrasikan aplikasi Java kita dengan perkhidmatan Twitter.

Ketergantungan Maven

Untuk memulakan, kami akan menambahkan Maven Dependency yang sesuai untuk projek Java kami.


org.twitter4j
twitter4j-teras
4.0.6

Dapatkan versi pergantungan maven terkini di sini.

Pengesahan

Kami telah menambahkan pergantungan Maven yang diperlukan sekarang. Sudah tiba masanya kita mula bercakap dengan API dan Twitter.

Untuk memulakan perbualan, kami perlu mengesahkan panggilan kami ke Twitter agar dapat mengetahui bahawa hanya pengguna yang dikenali yang mengakses data tersebut. Untuk ini, mari siapkan kunci yang kami perolehi lebih awal.

Rentetan akhir statik CONSUMER_KEY = "you-key";
Rentetan akhir statik CONSUMER_SECRET = "rahsia";
Rentetan akhir statik ACCESS_TOKEN = "token";
Rentetan akhir statik ACCESS_TOKEN_SECRET = "token-secret";
getTwitterInstance Twitter statik awam ()
ConfigurationBuilder cb = baru ConfigurationBuilder ();
cb.setDebugEnabled (benar) bashbash
.setOAuthConsumerKey (CONSUMER_KEY)
.setOAuthConsumerSecret (CONSUMER_SECRET)
.setOAuthAccessToken (ACCESS_TOKEN)
.setOAuthAccessTokenSecret (ACCESS_TOKEN_SECRET);
TwitterFactory tf = TwitterFactory baru (cb.membina ());
kembali tf.getInstance ();

Contoh: Menunjukkan Garis Masa

Dalam contoh ini, kami akan menunjukkan beberapa tweet terbaru dari garis masa pengguna yang disahkan. Kami akan melakukan ini dengan menggunakan contoh Status objek Twitter sebagai:

pertunjukan kekosongan statik peribadiHomeTimeline (Twitter twitter)
Senaraikan status = batal;
cuba
status = twitter.getHomeTimeline ();
Sistem.keluar.println ("Menunjukkan garis masa rumah.");
untuk (Status status: status)
Sistem.keluar.println (status.getUser ().getName () + ":" + status.getText ());
String url = "https: // twitter.status com / "+.getUser ().getScreenName () + "/ status /"
+ status.getId ();
Sistem.keluar.println ("URL tweet di atas:" + url);

tangkap (TwitterException e)
e.printStackTrace ();

Hasilnya kelihatan seperti sekumpulan tweet rawak:

Mengikuti pautan ke tweet akan sering membawa anda ke tweet itu sendiri. Mengikuti pautan dari tweet pertama akan memberikan hasil berikut:

Selain dari nama pengguna dan teks tweet, API Twitter mempunyai banyak maklumat yang dapat disimpulkan dari kaedah berikut yang tersedia:

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 ();

Ini memberikan banyak maklumat yang berkaitan dengan Tweet dan pengguna yang menyiarkan tweet tersebut. Ini termasuk tidak semua kaedah, jangan ragu untuk meneroka semua kaedah yang ada.

Perhatikan bahawa atribut ini sangat berguna jika aplikasi anda bergantung pada lebih banyak data.

Contoh: Kirim Tweet

Dalam contoh ini, kami hanya akan menghantar tweet baru dari kod kami kerana pengguna sudah disahkan. Mari letakkan beberapa contoh kod di sini:

kemas kini kekosongan statik peribadiTweet (Twitter twitter, String tweet) membuang TwitterException
Status status = twitter.kemas kiniStatus (tweet);
Sistem.keluar.println ("Berjaya mengemas kini status ke [" + status.getText () + "].");

Menyiarkan tweet baru semudah itu.

Contoh: Tweet dari Pengguna Tertentu

Sangat mudah untuk mendapatkan tweet pengguna lain, cukup lulus nama pengguna dan API akan mengembalikan beberapa tweet baru-baru ini untuk pengguna.

Mari cuba menarik dua puluh tweet terbaru dari akaun twitter @linuxhint:

Berikut adalah contoh kod:

Senaraikan status = twitter.getUserTimeline ("linuxhint");
untuk (Status status: status)
String fmt = "@" + status.getUser ().getScreenName () + "-" + status.getText ();
Sistem.keluar.println (fmt);

Semasa anda menjalankan program ini, anda akan melihat Tweets untuk LinuxHint.

Aplikasi popular jenis data ini boleh merangkumi:

  • Menjalankan analisis terhadap pengguna tertentu, dan bagaimana mereka berinteraksi dengan dunia
  • Mencari pemberi pengaruh Twitter dan menganalisis trend dan interaksi pengikut mereka
  • Memantau perubahan pengikut pengguna

Contoh: Mencari Tweet Menggunakan Kata Kunci

Mari kita buat satu contoh terakhir: Mendapatkan tweet terbaru yang mengandungi kata kunci. Ini sangat berguna sekiranya anda ingin memantau topik yang disebut secara khusus di dunia Twitter, atau bahkan untuk melihat bagaimana perniagaan anda disebut.

Katakanlah kita ingin melihat bagaimana Twitter menyebut Linux:

// searchTerm = Linux
carian tidak sah statik peribadiTweets (Twitter twitter, String searchTerm) membuang TwitterException
Pertanyaan pertanyaan = Pertanyaan baru ("sumber:" + searchTerm);
Hasil QueryResult = twitter.carian (pertanyaan);
untuk (Status status: hasil.getTweets ())
Sistem.keluar.println ("@" + status.getUser ().getScreenName () + ":" + status.getText ());

Berikut adalah beberapa kaedah praktikal untuk menggunakan maklumat ini:

  • Buat grafik ruang di mana syarikat anda paling banyak disebut di seluruh dunia
  • Jalankan analisis sentimen pada tweet untuk melihat apakah pendapat keseluruhan syarikat anda positif atau negatif
  • Buat grafik sosial pengguna paling popular yang menge-tweet mengenai syarikat atau produk anda

Kita boleh merangkumi beberapa topik ini dalam artikel yang akan datang.

API Twitter sangat berguna dalam aplikasi perlombongan data, dan dapat memberikan pandangan yang luas mengenai pendapat umum.

5 Permainan Arcade Terbaik untuk Linux
Pada masa kini, komputer adalah mesin serius yang digunakan untuk permainan. Sekiranya anda tidak dapat memperoleh skor tinggi baru, anda akan tahu ma...
Battle For Wesnoth 1.13.6 Pembangunan Dikeluarkan
Battle For Wesnoth 1.13.6 dilancarkan bulan lalu, adalah rilis pengembangan keenam di 1.13.siri x dan memberikan sejumlah penambahbaikan, terutamanya ...
Cara Memasang League Of Legends di Ubuntu 14.04
Sekiranya anda peminat League of Legends, maka ini adalah peluang bagi anda untuk menguji menjalankan League of Legends. Perhatikan bahawa LOL disokon...