Первый шаг

Lakukan Inspect element di web sebagai contoh https://books.toscrape.com/

Сделайте элемент Inspect в Интернете, например https://books.toscrape.com/

A ) Пертама карила элемент ян менундзюкан темпат гамбар буку

Сначала найдите элемент, который показывает место изображения книги.

B ) Кедуа карила элемен джудул

Второй взгляд на элемент title

C ) Ketiga carilah elemen разглагольствует

В-третьих, ищите элементы в разделе рейтинга

D ) Keempat carilah letak harga

В-четвертых, найти в расположении цены

Jika sudah tahu letak semua yang ada diatas setelah itu kita lakukan соскребание данных ke monitor

Если вы уже знаете расположение всего вышеперечисленного, то мы соскоблим данные на монитор

from bs4 import BeautifulSoup
import requests
# import pandas as pd

def convertR(rtg):
    if rtg == ['star-rating', 'One']:
        rtg = '1'
        return rtg
    elif rtg == ['star-rating', 'Two']:
        rtg = '2'
        return rtg
    elif rtg == ['star-rating', 'Three']:
        rtg = '3'
        return rtg
    elif rtg == ['star-rating', 'Four']:
        rtg = '4'
        return rtg
    else:
        rtg = '5'
        return rtg

try :
    print('')
    print('Starting Scrapping...')
    print('')
    # data=[]
    for page in range(1, 3):
        html = requests.get('http://books.toscrape.com/catalogue/page-'+str(page)+'.html')
        html_soup = BeautifulSoup(html.content, 'html.parser')
        data_all = html_soup.find_all('article', class_ = 'product_pod')
        print('-------------------------------')
        print('~ ~ ~ Scrapping Page Ke-' + str(page) + ' ~ ~ ~')
        print('-------------------------------')
        for b in data_all:

            dataGbr = b.find('img', class_='thumbnail')
            dataGambar = dataGbr.get('src')

            dataJdl = b.find('h3')
            dataJdl2 = dataJdl.find('a')
            dataJudul = dataJdl2.get('title')

            dataRtg = b.find('p')
            dataRating = dataRtg.get('class')
            Rating = convertR(dataRating)

            dataHarga = b.find('p', class_ = 'price_color').text

            print('')
            print('Gambar : ' + str(dataGambar.replace('..','http://books.toscrape.com')))
            print('Judul  : ' + str(dataJudul))
            print('Rating : ' + str(Rating))
            print('Harga  : ' + dataHarga.replace('£',''))
            print('')

    #         data.append({
    #             'Gambar':dataGambar,
    #             'Judul':dataJudul,
    #             'Rating':Rating,
    #             'Harga':dataHarga.replace('£','')
    #         })
    # df = pd.DataFrame(data)
    # df.to_csv('Data_Buku.csv', encoding='utf-8')
    print('Scrapping Success...')

except Exception as err :
    ('')

Ketik dan jalankan kode diatas menggunakan bahasa pemograman python

Введите и запустите приведенный выше код, используя язык программирования python.

Мака хасил янг дитампилкан себагай берикут

Затем результаты отображаются следующим образом

Untuk menampilkan 50 halaman harus melakukan данные очистки ke seluruh halaman yang ada dari 1–50 halaman

Чтобы отобразить 50 страниц, вам нужно очистить данные по всем существующим страницам с 1 по 50 страниц.

 for page in range(1, 51):

Хасил царапает дибава ини

Результат очистки ниже

Байкла секиан дари сая семога ильму берманфаат, сампай джампа

Ну вот и все от меня, надеюсь знания пригодятся, пока