Anggri Yulio P
Web Developer, sekarang mulai jatuh hati pada Computer Vision.
December 18, 2018 1:41 am

Web Scraping dengan Python dan BeautifulSoup

Apa itu Web Scraping ?

Web Scraping adalah salah satu metode yang bisa kita gunakan dalam mengumpulkan data dari internet. Scraping  kita lakukan seandainya ingin melakukan ektraksi informasi dari sebuah situs web secara langsung dengan menggunakan protokol http.

Web Scraping bisa menjadi solusi dalam mendapatkan informasi dari sebuah situs web jika situs tersebut tidak menyediakan API untuk pengambilan informasi.

Web scraping, web harvesting, or web data extraction is data scraping used for extracting data from websites. Web scraping software may access the World Wide Web directly using the Hypertext Transfer Protocol, or through a web browser

– Wikipedia

Beautiful Soup 

Beautiful Soup merupakan sebuah library Python yang memungkinkan kita untuk melakukan scraping dengan mudah dan cepat, keunggulan Beatutiful Soup adalah :

  1. Beautiful Soup hadir dengan metode-metode yang sederhana sehingga kita dengan mudah melakukan proses navigasi, pencarian dan juga modifikasi struktur data situs yang kita scraping.
  2. Beautiful Soup secara otomatis mampu menkonversi dokumen ke dalam format UTF-8
  3. Bekerja dengan baik dengan library Python lxml dan html5lib untuk melakukan parsing dokumen.

Instalasi Library Beautiful Soup

Merujuk pada dokumentasi resmi Beautiful Soup 1 kita dalam melakukan instalasi dengan beberapa cara:

Menggunakan Package Manager Linux

Jika menggunakan sistem operasi Ubuntu atau Distro turunan debian lainnya, kita bisa menginstall beautiful soup dengan package manager :

Menggunakan easy_install atau pip

Melakukan Scraping

Disini kita coba melakukan scraping pada situs kesayangan kita mojok.co 😀 kita akan mengambil daftar artikel pada kolom Pilihan Redaksi

Artikel Pilihan Redaksi MOJOK.co

Sebelum melakukan scraping terlebih dahulu kita harus melihat struktur html dari situs target (MOJOK.co). Kita bisa menggunakan tool bawan dari Chrome atau browser lainnya untuk melakukan inspect element dan mencari id atau class yang digunakan pada element html situs tersebut. Carilah id atau class yang benar-benar unik dari element tersebut.

Inspect element chrome

Dari hari inspect element diatas kita dapatkan bahwa artikel pilihan redaksi berapa di bagian <section id=”cb-section-a” … > jadi kunci pertama dalam melakukan scraping kali ini adalah mencari element section dengan id cb-section-a.

Import terlebih dahulu library yang akan kita gunakan, dan mendeklarasikan url dari situs MOJOK.co

Kemudian jika kita perhatikan kembali struktur dari situs tersebut, didalam section dengan id cb-section-a setiap link artikel berada dalam tag <article> dengan Heading 2 (h2). Lihat gambar dibawah:

Element pada Judul Artikel

Selanjutnya dari kita ambil semua element dengan tag <article> dan kita parsing lagi untuk mendapatkan daftar judul artikelnya.

Jalankan kode diatas dan hasilnya:

Hasil Web Scraping

Dan ternyata Web Scraping itu mudah 😀 hehe

Referensi

  1. https://www.crummy.com/software/BeautifulSoup/bs4/doc/#installing-beautiful-soup