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/

Contents
Scraping Single Quote
Untuk 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 get()
dengan parameter alamat website
requests.get("http://quotes.toscrape.com/")
Kita cek status_code
jika hasil yang dikeluarkan adalah <Response [200]>
berarti koneksi sukses
Sedangkan untuk mengambil halaman HTML yang diakses kita gunakan properti content
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 BeautifulSoup
Selanjutnya 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 find()
atau find_all()
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 Quote
Inspect quote pertama dari Albert Einstein dan dapatkan nama class yang digunakan

Tag yang digunakan adalah <span>
dengan nama classs text
Gunakan library BeautifulSoup dengan fungsi find()
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 text
di akhir fungsi find()
seperti ini
quote = soup.find('span', class_='text').text

#2 Author
Tag yang digunakan untuk Author adalah <small>
dengan nama class author

Tambahkan kode berikut setelah kode diatas
author = soup.find('small', class_='author') print(author)
Hasilya

#3 Tags
Dan terakhir adalah tags
dari quote

Untuk element tags
agak sedikit lebih rumit karena setiap tags
diapit oleh <a>
yang berada di dalam <div>
sehingga tags
harus disimpan ke dalam List
Dibutuhkan fungsi find()
untuk mengambil konten <div>
dan fungsi find_all()
untuk mengambil isi dari <a>
Tambahkan kode berikut untuk mengambil text dari tags
yang disimpan ke dalam List
tags = [tag.text for tag in soup.find('div', class_='tags').find_all('a', class_='tag')] print(tags)

Final Code
Berikut adalah final code untuk scraping single quote
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').text author = soup.find('small', class_='author').text tags = [tag.text for tag in soup.find('div', class_='tags').find_all('a', class_='tag')] print(quote) print(author) print(tags)

Materi selanjutnya adalah mengambil banyak quote dari 1 halaman website http://quotes.toscrape.com/
turorial nya sangat membantu bang …terima kasih …lanjutkan tutorial coding scrape nya bang
bikin tutorial selenium juga bang
Saya kurang paham untuk ngambil tags nya, bingung kenapa pake [ ], kenapa ada tag.text di awal for. Selebihnya untuk tutorial nya mudah di pahami, dari part 1 juga jadi seru ngikutinnya. Terima kasih.