Artikel ini membahas cara crawl (mengumpulkan) data dari media sosial twitter. Crawling data bisa dilakukan dengan setidaknya dua cara: search dan realtime streaming. Pada tulisan ini saya akan jelaskan cara crawl data twitter dengan melakukan searching melalui suatu query (keywords) tertentu.
[1]. Mendaftarkan Applikasi twitter
Sebelum mulai, "aplikasi" yang akan dibuat harus didaftarkan terlebih dahulu. Aplikasi yang dimaksud adalah program yang akan kita buat untuk crawl data twitter.
- Login ke twitter: https://twitter.com/
- Untuk membuat aplikasi twitter, no telephone pengguna wajib untuk didaftarkan (aturan baru). caranya klik link berikut: https://twitter.com/settings/add_phone
- Daftarkan aplikasi: https://apps.twitter.com/
* Klik tombol Create New App
* Isi detail aplikasi. Jangan hawatir bila anda belum memiliki website. Isi saja dengan sembarang alamat website (atau wordpress site anda), yang penting alamat URL-nya harus valid (lihat Gambar 1). Jangan lupa untuk klik "Yes, I Agree" dan tombol "Create Your Twitter Application"
* Klik tab "Keys and Access Tokens"
* Klik "Create my access tokens"
* Simpan empat entitas berikut ke suatu text file (notepad) di komputer anda: consumer_key, consumer_secret, access_token, access_secret. Kelak kita akan membutuhkannya untuk bisa mengakses twitter API (Application Program interface).
[caption id="attachment_1789" align="aligncenter" width="320"] Gambar 1. Twitter App Setting[/caption]
[/caption]
[2]. Aturan twitter
Sebelum kita membahas lebih jauh tentang aplikasi twitter atau crawling data media sosial (twitter), ada baiknya terlebih dahulu kita pahami beberapa aturan atau batasan aplikasi yang akan dibuat. Mengapa? supaya nanti kalau ada error, kita tidak panik atau agar bisa mengerti kesalahan apa yang mungkin kita lakukan. Saya tidak ingin memenuhi artikel ini dengan aturan-aturan tersebut. Untuk lebih jelasnya silahkan baca baik-baik aturan-aturan twitter berikut:
- Batasan banyak data yang bisa diambil: https://dev.twitter.com/rest/public/rate-limiting
- Batasan penggunaan/perjanjian aplikasi: https://dev.twitter.com/overview/terms/agreement-and-policy
- Kode error API (aplikasi) - Sangat penting untuk para programmer agar tidak stress :D : https://dev.twitter.com/overview/api/response-codes
[3]. Instalasi software yang dibutuhkan
Untuk mengumpulkan data twitter kita bisa menggunakan hampir semua bahasa pemrograman: Java, C++, PHP, dsb. Namun di artikel ini saya akan menggunakan salah satu bahasa pemrograman yang paling mudah namun memiliki performa, library dan utilitas yang cukup baik: Python.
- Install Python (jika belum ada di komputer anda). Untuk kemudahan, saya menyarankan untuk menggunakan Anaconda. (Saya menggunakan PyThon 3.5)
- Untuk menghubungkan bahasa pemrograman yang kita gunakan dan twitter terdapat lusinan driver/library yang dapat kita gunakan (Daftar Lengkapnya di sini). Namun untuk artikel ini kita akan menggunakan Tweepy. Untuk menginstall Tweepy di komputer anda, silahkan buka "Command Prompt" (terminal di Linux/Mac) lalu ketikkan perintah berikut:
pip install tweepy
- Hasil crawl kita nanti akan disimpan dalam format Json. Apa itu Json? Ndak usah hawatir, Json hanyalah format data sebagaimana CSV atau html. Ia hanyalah file teks biasa dengan format tertentu. Jika ingin tau lebih lanjut silahkan pelajari disini. Kita membutuhkan sebuah Modul (library/fungsi) yang akan menyelamatkan diri kita dari pusing 7 keliling (pusing pala Barbie) ketika berurusan dengan format json di Python. Tenang saja, obatnya sudah tersedia ... :D ... silahkan ketikkan perintah berikut di command prompt/shell.
pip install jsonpickle
[4]. The code
Saya asumsikan semua langkah diatas telah dilalui dengan sukses tanpa halangan (error) yang berarti. Jika masih ada langkah yang error silahkan hubungi Pak RT setempat ... :D ... kidding, silahkan komen dibawah, jangan lupa berikan pesan errornya dengan detail ya. Bagi anda yang beruntung, mari kita mulai beraksi.
- Buka editor Python anda, jika anda menginstall Anaconda, silahkan jalankan "Spyder" (cari shortcut-nya di 'start menu').
- Silahkan CoPas code berikut. Jangan lupa rubah "consumer_key","consumer_secret","qry","maxTweets", & "fName" dengan nilai-nilai yang sesuai dengan kebutuhan analitik anda
-
- Jalankan code diatas dengan menekan tombol "F5" di Spyder atau jalankan melalui command prompt dengan perintah berikut:
C:\Folder_dimana_code_anda_berada\python Search_Json.py
- Jika tidak ada error, silahkan lihat di folder dimana code anda berada, (insya Allah :D ) akan ada file baru hasil tweet yang telah anda crawl. Jika tidak ada, silahkan lapor polisi ... eh salah... komentar dibawah (dengan pesan error yang muncul).
- Tips: Hati-hati makna spasi di query twitter adalah logika AND. Query "big data" artinya mencari tweet dengan kata "big" dan "data". Jika anda menginginkan tweet yang memuat beberapa kata kunci gunakan operator OR.
contoh: 'taufikedys OR "taufik Sutanto" OR "big data" or "data science" OR matematika'
Penutup:
Mudah kan ya? iya kan? ya? .... Anyway ... Setelah crawl data, tentu saja anda ingin menganalisa data tersebut. Mudahnya gunakan saja Gephy. Tapi kalau menginginkan analisa tingkat lanjut (advance) yang lain, harus menggunakan model statistika/data science/machine learning tersendiri. Saya akan menulis artikel lain tentang Gephi atau analisa tingkat lanjut tersebut dilain kesempatan. Untuk saat ini, silahkan bermain-main saja dulu dengan code diatas :) . Ada pertanyaan atau perintah yang tidak dimengerti? Lagi-lagi silahkan komentar dibawah. Have Fun!!....Hidup itu indah, cheer up! ... ;) ...
[Taufik Sutanto]-Bne, 18:31:13, 12/16/2015
Tidak ada komentar:
Posting Komentar
Relevant & Respectful Comments Only.