Cara menggunakan requests-html tutorial

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/

Cara menggunakan requests-html tutorial
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

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)

Cara menggunakan requests-html tutorial

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

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 Quote

Inspect quote pertama dari Albert Einstein dan dapatkan nama class yang digunakan

Cara menggunakan requests-html tutorial

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

Cara menggunakan requests-html tutorial

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

quote = soup.find('span', class_='text').text
Cara menggunakan requests-html tutorial
#2 Author

Tag yang digunakan untuk Author adalah

requests.get("http://quotes.toscrape.com/")
9 dengan nama class author

Cara menggunakan requests-html tutorial

Tambahkan kode berikut setelah kode diatas

author = soup.find('small', class_='author')

print(author)

Hasilya

Cara menggunakan requests-html tutorial
#3 Tags

Dan terakhir adalah

import requests

page = requests.get("http://quotes.toscrape.com/")

print(page.status_code)
print(page.content)
0 dari quote

Cara menggunakan requests-html tutorial

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