CAPSOLVER
Blog
Cara Menggunakan Hrequests untuk Web Scraping

Cara Menggunakan Hrequests untuk Web Scraping

Logo of CapSolver

Lucas Mitchell

Automation Engineer

04-Sep-2024

Cara Menggunakan Hrequests untuk Web Scraping

Web scraping adalah cara yang ampuh untuk mengekstrak informasi dari situs web, tetapi sering kali menjadi tantangan ketika situs menerapkan captcha, pembatasan kecepatan, atau proxy untuk memblokir scraper yang tidak diinginkan. Dalam panduan ini, kami akan memperkenalkan hrequests, sebuah library web-scraping berkinerja tinggi, dan memandu Anda melalui penggunaan dasarnya, termasuk demonstrasi untuk mengikis situs menggunakan hrequests dalam kombinasi dengan Capsolver untuk melewati tantangan ReCaptcha.

Apa itu hrequests?

hrequests adalah library HTTP Python modern yang dibuat untuk kecepatan dan fleksibilitas, dirancang untuk menangani tugas web scraping yang berat. Ini pada dasarnya adalah versi yang disempurnakan dari requests, dengan penekanan yang lebih kuat pada penanganan permintaan dengan lebih banyak kendali, terutama di lingkungan yang memerlukan penanganan proxy atau captcha tambahan.

Library ini menyediakan beberapa fitur:

  • Dukungan Asyncio untuk membuat permintaan bersamaan.
  • Penanganan sesi untuk menggunakan kembali koneksi secara efisien.
  • Dukungan proxy untuk menangani permintaan di balik proxy.
  • Dukungan pembatasan kecepatan untuk menghindari pemblokiran.
  • Dukungan penyelesaian captcha melalui layanan eksternal.

Prasyarat

Sebelum Anda mempelajari cara menggunakan hrequests, pastikan Anda telah menginstal hal-hal berikut:

bash Copy
pip install hrequests capsolver

Pastikan Anda juga memiliki kunci API Capsolver untuk menyelesaikan captcha jika situs yang Anda kikis memerlukannya. Untuk instruksi pengaturan terperinci, kunjungi halaman GitHub hrequests.

Memulai dengan hrequests

Berikut adalah contoh dasar cara menggunakan hrequests untuk mengikis halaman web:

python Copy
import hrequests

# URL halaman web yang ingin kita kikis
url = 'https://example.com'

# Buat permintaan GET sederhana
response = hrequests.get(url)

# Cetak kode status


```python
print(f"Kode Status: {response.status_code}")

# Cetak konten halaman
print(f"Konten Halaman: {response.text}")

Ini adalah skrip dasar yang membuat permintaan GET ke URL yang diberikan dan mencetak kode status dan konten halaman. Namun, banyak situs web lebih kompleks dan memerlukan penanganan tambahan seperti rotasi proksi, pemalsuan agen pengguna, atau penyelesaian captcha.

Menangani Captcha dengan Capsolver dan hrequests

Pada bagian ini, kita akan menjelajahi cara mengintegrasikan Capsolver dengan hrequests untuk melewati captcha. Capsolver adalah layanan eksternal yang membantu dalam memecahkan berbagai jenis captcha, termasuk ReCaptcha V2, yang umumnya digunakan di situs web.

Kami akan mendemonstrasikan penyelesaian ReCaptcha V2 menggunakan Capsolver dan kemudian mengikis konten halaman yang memerlukan pemecahan captcha terlebih dahulu.

Contoh: Memecahkan ReCaptcha V2 dengan Capsolver

python Copy
import capsolver
import hrequests
import os

# Pertimbangkan untuk menggunakan variabel lingkungan untuk informasi sensitif
PROXY = os.getenv("PROXY", "http://username:password@host:port")
capsolver.api_key = os.getenv("CAPSOLVER_API_KEY", "Kunci API Capsolver Anda")
PAGE_URL = os.getenv("PAGE_URL", "PAGE_URL")
PAGE_KEY = os.getenv("PAGE_SITE_KEY", "PAGE_SITE_KEY")

def solve_recaptcha_v2(url, key):
    solution = capsolver.solve({
        "type": "ReCaptchaV2Task",
        "websiteURL": url,
        "websiteKey": key,
        "proxy": PROXY
    })
    return solution['solution']['gRecaptchaResponse']

def main():
    print("Memecahkan reCaptcha v2")
    solution = solve_recaptcha_v2(PAGE_URL, PAGE_KEY)
    print("Solusi: ", solution)

    # Sekarang setelah kita memecahkan captcha, kita dapat melanjutkan dengan pengikisan
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
    }

    # Mengirimkan permintaan GET dengan solusi captcha
    response = hrequests.get(
        PAGE_URL, 
        headers=headers, 
        data={"g-recaptcha-response": solution},
python Copy
proxies = {"http": PROXY, "https": PROXY}
    )

    # Memeriksa status dan mencetak konten halaman
    if response.status_code == 200:
        print("Berhasil mengambil halaman!")
        print(response.text)
    else:
        print(f"Gagal mengambil halaman. Kode Status: {response.status_code}")

if __name__ == "__main__":
    main()

Jangan ragu untuk memperluas skrip ini agar sesuai dengan kebutuhan scraping Anda dan bereksperimen dengan fitur tambahan yang ditawarkan oleh hrequests. Pastikan selalu bahwa aktivitas scraping Anda menghormati persyaratan layanan situs web dan pedoman hukum.

Selamat scraping!

Pernyataan Kepatuhan: Informasi yang diberikan di blog ini hanya untuk tujuan informasi. CapSolver berkomitmen untuk mematuhi semua hukum dan peraturan yang berlaku. Penggunaan jaringan CapSolver untuk kegiatan ilegal, penipuan, atau penyalahgunaan sangat dilarang dan akan diselidiki. Solusi penyelesaian captcha kami meningkatkan pengalaman pengguna sambil memastikan kepatuhan 100% dalam membantu menyelesaikan kesulitan captcha selama pengambilan data publik. Kami mendorong penggunaan layanan kami secara bertanggung jawab. Untuk informasi lebih lanjut, silakan kunjungi Syarat Layanan dan Kebijakan Privasi.

Lebih lanjut

Cara Memulai Web Scraping di R: Panduan Lengkap untuk 2025
Cara Memulai Web Scraping di R: Panduan Lengkap untuk 2025

Pelajari cara mengambil data dengan R, siapkan lingkungan Anda, tangani konten dinamis, dan ikuti praktik terbaik untuk pengambilan data yang etis.

Logo of CapSolver

Ethan Collins

26-Nov-2024

Web Scraping dengan Botright dan Python di 2025
Web Scraping dengan Botright dan Python di 2025

Pelajari cara mengintegrasikan CapSolver dengan Botright menggunakan ekstensi browser CapSolver untuk menyelesaikan CAPTCHA secara efisien saat melakukan web scraping. Panduan lengkap ini mencakup pengaturan Botright, pembuatan scraper dasar, dan otomatisasi pemecahan CAPTCHA untuk ekstraksi data tanpa gangguan.

Logo of CapSolver

Ethan Collins

14-Nov-2024

Cara Mengatasi Tantangan Web Scraping dengan Scrapy dan Playwright di tahun 2025
Cara Mengatasi Tantangan Web Scraping dengan Scrapy dan Playwright di 2025

Pelajari cara mengatasi tantangan scraping web di tahun 2025 menggunakan Scrapy dan Playwright. Panduan komprehensif ini mengeksplorasi integrasi Scrapy-Playwright dengan CapSolver untuk secara efektif menangani konten dinamis dan captcha, memastikan ekstraksi data yang efisien dan andal.

Logo of CapSolver

Adélia Cruz

12-Nov-2024

Scraping Web dengan SeleniumBase dan Python di 2024
Web Scraping dengan SeleniumBase dan Python di 2024

Pelajari cara melakukan web scraping menggunakan SeleniumBase dan mengintegrasikan CapSolver untuk menyelesaikan CAPTCHA secara efisien, dengan contoh praktis menggunakan quotes.toscrape.com.

Logo of CapSolver

Emma Foster

05-Nov-2024

Cara Menyelesaikan Cloudflare dengan Menggunakan Python dan Go di Tahun 2025
Cara Menyelesaikan Cloudflare dengan Menggunakan Python dan Go di Tahun 2025

Akan berbagi wawasan tentang apa itu Cloudflare Turnstile, menggunakan Python dan Go untuk tugas-tugas ini, apakah Turnstile dapat mendeteksi scraper Python, dan bagaimana cara melewati dengan efektif menggunakan solusi seperti CapSolver.

Logo of CapSolver

Ethan Collins

05-Nov-2024

Mengerjakan reCAPTCHA Menggunakan Python, Java, dan C++
Memecahkan reCAPTCHA Menggunakan Python, Java, dan C++

Bagaimana cara memecahkan reCAPTCHA dengan sukses menggunakan tiga bahasa pemrograman yang kuat: Python, Java, dan C++ dalam satu blog? Masuk!

reCAPTCHA
Logo of CapSolver

Ethan Collins

25-Oct-2024