Note : Artikel ini dipublikasikan pada 2016 diblog lama saya, tapi contoh code nya diperbarui dengan data terbaru saat dipindah keblog ini
Pada postingan sebelumnya, saya telah sedikit berbagi tentang social media analytics dan sempat menyinggung sumber data yang digunakan dalam social media analytics diantaranya sosial media, news portal, blog dll. Kali ini, saya akan berbagi salah satu tahap awal dalam analytics yakni pengumpulan data (data harvesting). Sesuai judulnya, postingan ini akan membahas tentang cara mendapatkan data dari Twitter sebagai bahan analisis. Dari sosial media populer seperti facebook dan instagram, twitter ini yang paling baik soal open access data. Twitter memberikan akses kepada khalayak untuk mengkonsumsi data mereka lewat API yang mereka sediakan. thanks Jack Dorsey!. API twitter sendiri terdiri 2 jenis yaitu REST API dan Streaming API. Lebih afdholnya langsung ke TKP aja gan untuk penjelasannya :D. Secara singkat bedanya, kalo REST API kita ngambil data di masa lalu hingga sekarang, kalo streaming API kita ngambil data mulai dari sekarang hingga ke depan tergantung berapa lama kita mau ambil. Nah kali ini kita akan menggali kenangan masa lalu di twitter lewat REST API.
Terima kasih kepada sohib kita Jeff (sok kenal) yang sudah membuat package R yang dia beri nama twitteR sehingga kita tinggal dengan mudah menggunakannya lewat function-function yang udah dibuat. Oke langsung saja ke tahap-tahapnya.
1. Gernerate access token
Generate access token API key dan API secret untuk bisa mengakses twitter API. Cara membuatnya langsung saja ke tulisan ini, inshaa Allah cukup jelas.
2. Install twitteR
package
Ada 2 cara untuk install package di R, pertama dengan build in function di R install.package atau melalui github repository menggunakan package devtools install package dari CRAN Ini cara paling praktis untuk install package ke R, caranya sangat mudah tinggal tulis fungsi install.packages(“package_name”) package akan otomatis terinstalll beserta dependensinya.
install package melalui Github menggunakan library devtools
Terkadang ada package yang belum terdaftar di CRAN sehingga belum bisa kita install menggunakan install.packages
, tapi kita tetap bisa menginstall package tersebut melalui repository development-nya dengan bantuan package devtools.Berikut adalah syntax untuk install twitteR
package dengan dua cara diatas:
|
|
3. Aktifkan package dan twitter authentication
Setelah twitteR
package terinstall, kita tinggal mengaktifkan package dengan function library(twitteR)
, setelah itu kita perlu melakukan proses autentifikasi menggunakan credential yang kita dapat di step 1 untuk bisa mengakses API twitter. Di package twitteR sendiri telah ada fungsi untuk menjalankan autentifikasi tanpa perlu menggunakan bantuan package lain seperti httr
.
|
|
Setelah credential telah diaktifkan, sekarang kita sudah bisa mengakses data dari API twitter.
4. Crawl data dari twitter
Untuk menggenerate data kita menggunakan fungsi searchTwitter
, fungsi ini mempunyai beberapa parameter, yang terpenting adalah keyword yakni keyword apa yang ingin kita download dari twitter. Kita juga bisa menambah parameter n yakni jumlah tweet yang ingin kita ambil serta mengatur waktu dari rentang kapan data yang mau kita ambil (tentunya dari masa lalu hingga sekarang). Berikut contohnya.
|
|
searchTwitter
akan mengembalikan data bertipe list, jika ingin melakukan analisis akan lebih mudah jika kita menggunakan data bertipe data frame, untung saja di twitteR
telah ada build in function untuk merubah data bertipe list ke data frame menggunakan fungsi twListToDF
.
|
|
|
|
output : searchTwitter
memberikan data dengan 16 kolom sebagai diatas.
contoh tweet yang kita dapat adalah.
|
|
|
|
Parameter diatas seperti keyword, n, date range dapat kita ubah sesuai dengan keinginan kita, bisa juga kita menambahkan parameter lainnya sesuai dengan yang ada di dokumentasi twitteR
package. Tentu saja, REST API ini punya limit dalam memberikan data kepada client baik rentang waktu yang bisa diakses maupun jumlah tweet yang diberikan, ada baiknya untuk membaca dulu dokumentasi twitter API sebelum mengaksesnya baik melalui R, python atau bahasa lainnya. Sekian, semoga bermanfaat.