Belajar cara scrape website dengan python dan beautiful soup – Kali ini riffamedia akan berbagi tutorial Belajar cara scrape website dengan python dan beautiful soup. Sebelum kita mememulai materi alangkah baiknya rekan rekan semua membacanya sambil mempraktekan nya agar cepat dalam memahami. Untuk itu silahkan rekan rekan install dulu python nya. Setelah terinstall rekan rekan bisa install modul beautifull soup dan install request, dengan cara mengetikan di cmd bagi yang memakai windows, dan bisa memakai terminal bagi yang memakai linux. Show Contents Cara menginstall Beautiful Souppip install beautifulsoup4 Kalau yang menggunakan pip3 rekan rekan bisa install dengan perintah pip3 install beautifulsoup4 Setalah itu jangan lupa juga install request. Karena request ini digunakan untuk scrape website. Sedangkan beautiful soup digunakan untuk extract data. kalian bisa menginstall request dengan mengetikan perintah pip install request Cukup dengan dua modul diatas, kita sudah bisa melakukan scrape website, dan juga kita bisa extract data dari website tersebut sesuai dengan keinginkata yang akan diambil. Cara Scrape Website Dengan Requestimport requests from requests import get url = "https://www.example.com/" headers = { "Accept-Language": "en-US, en;q=0.5", "User-Agent": "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36" } results = requests.get(url, headers=headers) Kode diatas adalah digunakan untuk scrapping, yaitu mendapatkan kode html dari website. Dalam kasus diatas kita mengambil data dari example.com. Jika kita ingin menampilkan kode html diatas, kita bisa melakukan dengan code berikut. Untuk menampilkan dalam bentuk clean print(results.text) Untuk menampilkan dalam bentuk html print(results.content) Cara Scrape Website dan extract HTML dengan Beautiful SoupUntuk memulai menggunakan beautiful shoup rekan rekan bisa import dulu beautiful soupnya di project rekan rekan semua from bs4 import BeautifulSoup Untuk mengubahnya kedalam format beautiful soup dan agar enak dilihat kode htmlnya, rekan rekan bisa mengubahnya dengan kode berikut soup = BeautifulSoup(results.content, 'html.parser') Sekarang saatnya hal yang paling penting dan paling menentukan dalam extract data, yaitu penentuan mana yang akan kita ambil, Karena banyak orang dipusingkan dibagian sini. Oleh karena itu anda tetap harus sembari praktek agar anda bisa lebih mendalami dan lebih paham. Web Scrapping merupakan proses untuk meng-ekstrak informasi (teks) dari website dan halaman online. Merupakan metode untuk mengambil informasi serta dataset untuk di analisis lebih lanjut. Kali ini kita akan mencoba untuk melakukan ekstraksi informasi menggunakan python serta library Beautiful Soup. Beautiful Soup merupakan library yang banyak digunakan untuk melakukan parsing elemen html. Sederhananya, library ini digunakan untuk menerjemahkan elemen tag html untuk diambil isi teks-nya. Mari Kita Coba Pada praktek kali ini, mari kita coba untuk meng-ekstrak informasi mengenai daftar episode anime Dragon Ball. Setelah mencoba mencari informasi mengenai daftar episode anime Dragon Ball, kita dapatkan bahwa informasi tersebut dapat diambil dari website wikipedia di link berikut https://en.wikipedia.org/wiki/List_of_Dragon_Ball_episodes. Dari sejumlah halaman yang ditampilkan, kita akan coba untuk meng-ekstrak tabel saga overview seperti gambar diatas. Langkah Pertama Pastikan library Beautiful Soup dan Request sudah terinstall, apabila belum jalankan perintah dibawah ini di console python. Library Requests berfungsi untuk mengambil elemen HTML dari sebuah alamat website yang diberikan, dan ini akan menjadi input bagi Beautiful Soup untuk melakukan parsing halaman.
Setelah berhasil menginstall dua library diatas, lakukan import library untuk menguji apakah library tersebut sudah terinstall dengan baik dan selanjutnya bisa kita gunakan dalam kode python kita.
Langkah Kedua Lakukan pengecekan melalui browser, pada elemen manakah tabel yang akan kita akstrak tersebut berada. Apabila menggunakan Firefox/ Chrome tekan CTR+Shift+I atau dengan melakukan klik kanan pada mouse dan pilih Inspect Element. Dari informasi yang ditampilkan pada jendela Inspect Element tersebut diketahui bahwa tabel yang akan kita ekstrak berada pada elemen table class=”wikitable”. Langkah Ketiga Setelah mengetahui di elemen mana informasi tersebut akan diambil, saatnya kita melakukan pemanggilan dan ekstraksi dari halaman tersebut. Panggil halaman menggunakan library request:
Perintah diatas akan melakukan pemanggilan pada alamat wikipedia. Argumen headers digunakan agar panggilan kita seolah-olah berasal dari sebuah web browser (yaitu ‘Mozilla/5.0’). Argumen headers ini sifatnya opsional, beberapa website tidak mensyaratkan hal tersebut tetapi ada beberapa website lainnya yang melakukan pengecekan agar halaman website mereka hanya bisa dibuka menggunakan browser yang legitimate. Langkah Keempat Setelah halaman web berhasil dibuka, jalankan Beautiful Soup untuk melakukan ekstraksi tabel yang akan kita ambil.
Variabel table menyimpan hasil pengambilan elemen tabel pertama yang merupakan tabel yang ingin kita ambil dari halaman website tersebut. Apabila kita coba tampilkan variabel tersebut penggunakan fungsi print maka akan menghasilkan tampilan seperti berikut: <table class="wikitable" style="text-align:center"> <tbody><tr> <th colspan="3">Season<sup class="reference" id="cite_ref-1"><a href="#cite_note-1">[n 1]</a></sup> </th> <th>Episodes </th> <th>Japanese Airdates </th> <th>English Airdates </th></tr> <tr> <td bgcolor="#CCF" width="3%"> </td> <td width="3%">1 </td> <td><b><a href="#Season_1:_Emperor_Pilaf_Saga_(1986)">Emperor Pilaf Saga</a></b> </td> <td>13 </td> <td>February 26, <a href="/wiki/1986_in_television" title="1986 in television">1986</a> – May 21, <a href="/wiki/1986_in_television" title="1986 in television">1986</a> </td> <td>September 9, <a href="/wiki/1995_in_television" title="1995 in television">1995</a> – December 2, <a href="/wiki/1995_in_television" title="1995 in television">1995</a> (original)<br/>August 20, <a href="/wiki/2001_in_television" title="2001 in television">2001</a> – September 5, <a href="/wiki/2001_in_television" title="2001 in television">2001</a> (re-dub) </td></tr> <tr> <td bgcolor="#2FCE1F"> </td> <td>2 </td> <td><b><a href="#Season_2:_Tournament_Saga_(Turtle_School_Training_and_21st_World_Martial_Arts_Tournament_Sagas)_(1986)">Tournament Saga (Turtle School Training and 21st World Martial Arts Tournament Sagas)</a></b> </td> <td>15 </td> <td>May 28, <a href="/wiki/1986_in_television" title="1986 in television">1986</a> – September 3, <a href="/wiki/1986_in_television" title="1986 in television">1986</a> </td> <td>September 6, <a href="/wiki/2001_in_television" title="2001 in television">2001</a> – September 26, <a href="/wiki/2001_in_television" title="2001 in television">2001</a> </td></tr> <tr> … Selanjutnya kita akan coba simpan masing-masing baris dari tabel tersebut kedalam sebuah list bernama rows.
Lakukan iterasi pada variabel row untuk memecah masing-masing kolom menjadi sebuah list yang kemudian disimpan kedalam variabel hasil.
Buat dataframe dari variabel list hasil dan tampilkan hasilnya.
Maka akan menghasilkan tampilan seperti berikut ini. Sudah lumayan menyerupai data yang diambil dari wikipedia bukan? Tetap ada beberapa hal yang harus diperbaiki dari dataframe yang telah dihasilkan, pertama adalah hapus kolom satu karena tidak menyimpan informasi apapun. Kemudian selanjutnya adalah memberi judul masing-masing kolom dari tabel kita. Terakhir adalah menghapus baris awal dari tabel kita karena terlihat disana tidak memiliki data/ none. Sebutkan langkah langkah Web Scraping?Menyalin Data secara Manual. Cara web scraping yang paling sederhana adalah menyalin data website secara manual. ... . Menggunakan Regular Expression. ... . Parsing HTML. ... . Menganalisa DOM. ... . Menggunakan XPath. ... . 6. Menggunakan Google Sheet. ... . Mendapatkan Leads. ... . Membandingkan Ulasan dalam Jumlah Besar.. Apa itu library BeautifulSoup?BeautifulSoup adalah library Python yang digunakan untuk mengambil data HTML dan XML. BeautifulSoup berfungsi sebagai parser untuk memisahkan komponen-komponen HTML menjadi rangkain elemen yang mudah dibaca.
Apa yang kalian ketahui tentang Web Scraping?Web scraping merupakan proses pengumpulan data dan informasi yang ada dalam sebuah website secara otomatis dan spesifik. Dikatakan spesifik karena data yang diambil hanya di bagian tertentu saja sesuai dengan kebutuhan.
|