Pada artikel pertama yaitu pengenalan web scraping dengan BeautifulSoup di Python telah dijelaskan konsep dasar dari library BeautifulSoup dan Struktur web http://quotes.toscrape.com/ Struktur Web http://quotes.toscrape.com/Contents Scraping Single QuoteUntuk permulaan kita akan coba scrape data dari satu quote yaitu quote pertama dari Albert Einstein Dibutuhkan library requests untuk mengambil halaman website yang akan di-scraping import requests Kemudian kita gunakan fungsi requests.get("http://quotes.toscrape.com/") Kita cek requests.get("http://quotes.toscrape.com/")0 berarti koneksi sukses Sedangkan untuk mengambil halaman HTML yang diakses kita gunakan properti requests.get("http://quotes.toscrape.com/")1 Berikut adalah potongan kode penggunaan library request import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content) Ekstrak Halaman dengan BeautifulSoupSelanjutnya gunakan library BeautifulSoup untuk mengambil element HTML yang ingin disimpan seperti konten quote, author, tag dengan menggunakan class attribut di kode HTML. Setelah mengetahui class attribut gunakan fungsi requests.get("http://quotes.toscrape.com/")2 atau requests.get("http://quotes.toscrape.com/")3 untuk mengekstrak konten dari halaman website BeautifulSoup memanfaatkan atribut class / id untuk mengambil data dari halaman web. Untuk mengetahui class attribut dari elemen yang ingin diekstrak gunakan tool inspect element di browser sepert pada materi part 1 #1 QuoteInspect quote pertama dari Albert Einstein dan dapatkan nama class yang digunakan Tag yang digunakan adalah requests.get("http://quotes.toscrape.com/")4 dengan nama classs requests.get("http://quotes.toscrape.com/")5 Gunakan library BeautifulSoup dengan fungsi requests.get("http://quotes.toscrape.com/")2 untuk mengekstrak quote pertama from bs4 import BeautifulSoup import requests page = requests.get("http://quotes.toscrape.com/") soup = BeautifulSoup(page.content, 'html.parser') quote = soup.find('span', class_='text') print(quote) Hasilnya Jika hanya ingin mengambil quote saja tanpa tag HTML tambarkan properti requests.get("http://quotes.toscrape.com/")5 di akhir fungsi requests.get("http://quotes.toscrape.com/")2seperti ini
#2 AuthorTag yang digunakan untuk Author adalah requests.get("http://quotes.toscrape.com/")9 dengan nama class author Tambahkan kode berikut setelah kode diatas author = soup.find('small', class_='author') print(author) Hasilya #3 TagsDan terakhir adalah import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content)0 dari quote Untuk element import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content)0 agak sedikit lebih rumit karena setiap import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content)0 diapit oleh import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content)3 yang berada di dalam import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content)4 sehingga import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content)0 harus disimpan ke dalam List Dibutuhkan fungsi requests.get("http://quotes.toscrape.com/")2 untuk mengambil konten import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content)4 dan fungsi requests.get("http://quotes.toscrape.com/")3 untuk mengambil isi dari import requests page = requests.get("http://quotes.toscrape.com/") print(page.status_code) print(page.content)3 |