logo proxyscrape gelap

Panduan untuk Menyederhanakan Scraping Web di Python dengan AutoScraper

Panduan, 4. Mengikis, Python, May-05-20245 menit baca

AutoScraper adalah pustaka scraping web sumber terbuka yang kuat untuk Python yang menyederhanakan proses ekstraksi data dari situs web. Tidak seperti kerangka kerja scraping web tradisional yang membutuhkan pengkodean ekstensif untuk mengurai konten HTML, AutoScraper dapat secara otomatis membuat aturan untuk mengekstrak informasi yang diinginkan berdasarkan contoh yang Anda berikan. AutoScraper sangat cocok untuk pemula dalam dunia web scraping. Antarmuka yang ramah pengguna dan pembuatan aturan otomatis membuatnya dapat diakses oleh mereka yang mungkin tidak memiliki pengalaman pengkodean yang luas.   

Fitur Utama AutoScraper

  • Kemudahan Penggunaan: Dengan beberapa baris kode, Anda bisa menyiapkan scraper web yang membutuhkan perawatan minimal.
  • Ekstraksi Data yang Efisien: Model AutoScraper mempelajari struktur halaman web untuk beradaptasi dengan perubahan kecil, sehingga mengurangi kebutuhan akan penyesuaian yang sering dilakukan.
  • Keserbagunaan: Mendukung berbagai macam situs web dan dapat diintegrasikan ke dalam jalur data yang lebih besar.

Mulai cepat pengikis otomatis

Misalkan Anda ingin mengikis toko e-commerce tanpa harus berurusan dengan penguraian HTML. AutoScraper memungkinkan Anda memasukkan nama produk ke dalam 'wanted_list', dan secara otomatis akan mempelajari struktur HTML dan mem-parsing produk selanjutnya dengan sendirinya.

Berikut ini adalah contoh yang jelas untuk mendemonstrasikan prosesnya, termasuk implementasi proxy:

Langkah 1: Instal AutoScraper

Pertama, Anda harus menginstal AutoScraper. Anda dapat melakukan ini dengan menggunakan pip:

dari impor autoscraperAutoScraper

Langkah 3: Tentukan URL dan Daftar Pencarian

Tentukan URL yang ingin Anda scrape dan elemen atau produk yang ingin Anda ekstrak. Dengan demikian, AutoScraper dapat mempelajari struktur HTML dan secara akurat mengurai semua elemen yang serupa dalam kerangka kerja tersebut:

url = 'https://books.toscrape.com/'
wanted_list = [
   "Memberi Tip pada Beludru",
   "Soumission",
]

Langkah 4: Buatlah Pengikis

Gunakan AutoScraper untuk membangun model pengikisan Anda:

    scraper = AutoScraper()
    
    proxies = {
        "http": 'http://test_user112:[email protected]:6060',
        "https": 'http://test_user112:[email protected]:6060',
    }
    #  if you wish to use the same scraper again
    scraper.save('books_to_scrape')
    result = scraper.build(url, wanted_list, request_args=dict(proxies=proxies))
    print(result)

Langkah 5: (Opsional) Gunakan kembali pengikis sebelumnya

    scraper = AutoScraper()

   scraper.load('books_to_scrape')

    hasil = scraper.get_result(url)

Keluaran yang dihasilkan oleh kode:

['A Light in the ...'], 
'Tipping the Velvet', 
'Soumission', 
' Benda Tajam ', 
'Sapiens: Sejarah Singkat...', 
'The Requiem Red', 'The Dirty Little Secrets ...', 
'The Coming Woman: A ...', 
'The Boys in the ...', 
'The Black Maria', 
' Hati yang Kelaparan( PerdaganganSegitiga...', 
"Shakespeare's Sonnets", 
'Set Me Free', 
"Scott Pilgrim's Precious Little ...", 
'Rip it Up and ...', 
' Band kami bisa menjadi ...', 
'Olio', 
'Mesaerion: Ilmu Pengetahuan Terbaik ...', 
'Libertarianisme untuk Pemula', 
"Hanya Himalaya", 
' Cahaya di Loteng', 
'Sapiens: Sejarah Singkat Umat Manusia', 
' Rahasia Kecil untuk Mendapatkan Pekerjaan Impian Anda', 
'The Coming Woman: Sebuah Novel Berdasarkan Kehidupan Tokoh Feminis Terkenal, Victoria Woodhull', 
'The Boys in the Boat: Sembilan Orang Amerika dan Pencarian Epik Mereka untuk Emas di Olimpiade Berlin 1936 ', 
'Starving Hearts( Trilogi PerdaganganSegitiga,#1)', 
"Kehidupan Kecil Scott Pilgrim yang Berharga (Scott Pilgrim #1)", 
'Rip it Up and Start Again', 
' Band Kami Bisa Menjadi Hidup Anda: Adegan-adegan dari American Indie Underground,  1981-1991', 
'Mesaerion: Cerita Fiksi Ilmiah Terbaik  1800-1849']

Keterbatasan

  Salah satu keterbatasan utama AutoScraper adalah tidak mendukung rendering JavaScript atau data yang dimuat secara dinamis. Tapi jangan khawatir, ada solusinya! Dengan menggunakan pustaka Python seperti Selenium atau Playwright, yang memang menangani data dinamis, kita dapat mengambil data HTML dan kemudian membiarkan AutoScraper menangani penguraiannya untuk kita.
Jika situs web target Anda menggunakan proteksi anti-bot, di ProxyScrape, kami menawarkan API web scraping yang dapat diandalkan yang menangani semuanya untuk Anda, membuat proses pengumpulan data Anda menjadi mudah dan efisien.
Berikut ini adalah contoh tentang bagaimana Anda dapat menggunakan API web scraping kami dengan AutoScraper:  

import requests
from autoscraper import AutoScraper


def send_request(url_to_scrape):
    api_key = 'your_api_key' 
    data = {
        "url": url_to_scrape,
        "browserHtml": True  # Use browserHtml for JavaScript rendering
    }
    headers = {
        "Content-Type": "application/json",
        "X-Api-Key": api_key
    }

    response = requests.post("https://api.proxyscrape.com/v3/accounts/freebies/scraperapi/request",
                             headers=headers, json=data)

    #  we return the html data that web scraping api extracted
    return response.json()['data']['browserHtml']

if __name__ == '__main__':
    target_url = 'https://books.toscrape.com/'

    # get html data using web scraping api
    html_content = send_request(target_url)

    # parse that html data using AutoScraper
    scraper = AutoScraper()

    wanted_list = [
        "Tipping the Velvet",
        "Soumission",
    ]

    result = scraper.build(wanted_list=wanted_list, html=html_content)

    print(result)

Praktik Terbaik untuk Scraping Web dengan AutoScraper dan Proksi

  • Hormati Ketentuan Layanan Situs Web: Selalu tinjau dan patuhi ketentuan layanan situs web sebelum melakukan scraping.
  • Gunakan Proksi Berputar: Untuk menghindari deteksi dan batas kecepatan, gunakan proxy berputar yang sering berganti alamat IP. ProxyScrape menawarkan proxy residensial dan seluler berputar yang sempurna untuk tujuan ini.
  • Batasi Permintaan Anda: Terapkan penundaan di antara permintaan untuk meniru perilaku manusia dan mengurangi risiko diblokir.
  • Pantau Aktivitas Anda: Periksa kesehatan proksi Anda secara teratur dan kinerja scraper Anda untuk mengidentifikasi dan mengatasi masalah apa pun dengan cepat.
  • Tetap Update: Selalu perbarui skrip scraping dan daftar proxy Anda untuk beradaptasi dengan perubahan struktur situs web dan rotasi IP proxy.

Kesimpulan

Pengikisan web adalah alat yang ampuh untuk akuisisi data, dan dengan kombinasi yang tepat antara AutoScraper dan proksi, Anda dapat membuka potensi penuhnya. Dengan mengintegrasikan proksi premium ProxyScrape, Anda memastikan bahwa aktivitas scraping Anda efisien, anonim, dan tanpa gangguan Kami menyediakan elemen-elemen yang diperlukan untuk membantu Anda memulai, jika Anda ingin lebih mahir menggunakan AutoScraper, lihat intisari ini.

Siap untuk meningkatkan permainan scraping web Anda? Mulailah menjelajahi kemampuan AutoScraper dengan proksi premium ProxyScrape hari ini. Kunjungi ProxyScrape untuk mendaftar dan memanfaatkan solusi proxy kami yang canggih.

Jika Anda membutuhkan bantuan dengan web scraping, silakan bergabung dengan saluran Discord kami di mana Anda dapat menemukan dukungan.

Happy Scraping!