CAPSOLVER
Blog
Cara Menyelesaikan CAPTCHA dengan Python Menggunakan Botasaurus dan CapSolver (Panduan Lengkap)

Cara Menyelesaikan CAPTCHAs dengan Python Menggunakan Botasaurus dan CapSolver (Panduan Lengkap)

Logo of CapSolver

Emma Foster

Machine Learning Engineer

15-Dec-2025

TLDR: Panduan ini menunjukkan cara menggabungkan Botasaurus, kerangka kerja scraping web Python dengan fitur anti-pendeteksian, dan CapSolver, API penyelesaian CAPTCHA, untuk secara otomatis melewati reCAPTCHA v2, reCAPTCHA v3, dan Cloudflare Turnstile selama scraping web skala besar. Proses intinya melibatkan persiapan lingkungan, menggunakan ekstensi browser CapSolver untuk mengidentifikasi parameter CAPTCHA, memanggil API CapSolver melalui fungsi bantuan Python untuk mendapatkan token solusi, dan akhirnya menggunakan Botasaurus untuk menyisipkan token ke halaman web untuk pengiriman formulir.

Cara Menyelesaikan CAPTCHA dalam Python Menggunakan Botasaurus dan CapSolver (Panduan Lengkap)

Scraping web skala besar sering kali menghadapi CAPTCHA yang menghalangi akses otomatis. Panduan ini menunjukkan cara menggabungkan Botasaurus, kerangka kerja scraping web yang kuat, dengan CapSolver untuk secara otomatis menyelesaikan CAPTCHA reCAPTCHA v2, reCAPTCHA v3, dan Cloudflare Turnstile.

Apa itu Botasaurus?

Botasaurus adalah kerangka kerja scraping web Python yang mempermudah otomasi browser dengan fitur anti-pendeteksian yang terintegrasi. Ini menyediakan API berbasis dekorator yang bersih untuk tugas browser.

Fitur Utama:

  • Anti-pendeteksian: Fitur stealth yang terintegrasi untuk menghindari deteksi bot
  • API Sederhana: Pendekatan berbasis dekorator dengan @browser
  • Eksekusi JavaScript: Jalankan kode JS kustom dalam konteks browser
  • Pemilihan elemen: Manipulasi DOM yang mudah dengan selector CSS

Instalasi:

bash Copy
pip install botasaurus

Penggunaan dasar:

python Copy
from botasaurus.browser import browser, Driver

@browser()
def scrape_page(driver: Driver, data):
    driver.get("https://example.com")
    title = driver.get_text("h1")
    return {"title": title}

# Jalankan scraper
result = scrape_page()

Apa itu CapSolver?

CapSolver adalah layanan penyelesaian CAPTCHA yang menyediakan API untuk menyelesaikan berbagai jenis CAPTCHA termasuk reCAPTCHA dan Cloudflare Turnstile.

Jenis CAPTCHA yang didukung:

  • reCAPTCHA v2 (checkbox dan invisible)
  • reCAPTCHA v3 (berbasis skor)
  • reCAPTCHA Enterprise
  • Cloudflare Turnstile
  • Dan lainnya

Mendapatkan kunci API Anda:

  1. Buat akun di Dashboard CapSolver
  2. Tambahkan dana ke akun Anda
  3. Salin kunci API Anda (dimulai dengan CAP-)

Persiapan Proyek

Instal Dependensi

bash Copy
pip install botasaurus capsolver requests python-dotenv

Konfigurasi Lingkungan

Buat file .env di akar proyek Anda:

env Copy
CAPSOLVER_API_KEY=CAP-YOUR_API_KEY_HERE

Modul Konfigurasi

Buat pemuat konfigurasi yang dapat dibagikan:

python Copy
# shared/config.py
import os
from pathlib import Path
from dotenv import load_dotenv

# Muat file .env dari akar proyek
ROOT_DIR = Path(__file__).parent.parent
load_dotenv(ROOT_DIR / ".env")

class Config:
    """Kelas konfigurasi untuk integrasi CapSolver."""

    # Kunci API CapSolver
    CAPSOLVER_API_KEY: str = os.getenv("CAPSOLVER_API_KEY", "")

    # Endpoint API CapSolver
    CAPSOLVER_API_URL = "https://api.capsolver.com"
    CREATE_TASK_ENDPOINT = f"{CAPSOLVER_API_URL}/createTask"
    GET_RESULT_ENDPOINT = f"{CAPSOLVER_API_URL}/getTaskResult"

    @classmethod
    def validate(cls) -> bool:
        """Periksa apakah konfigurasi valid."""
        if not cls.CAPSOLVER_API_KEY:
            print("Error: CAPSOLVER_API_KEY tidak diatur!")
            return False
        return True

Mengidentifikasi Parameter CAPTCHA dengan Ekstensi CapSolver

Sebelum mengintegrasikan dengan API, Anda perlu mengidentifikasi parameter yang benar untuk CAPTCHA target. Ekstensi CapSolver browser menyediakan cara mudah untuk mendeteksi semua parameter yang diperlukan secara otomatis.

Instalasi

Pasang ekstensi CapSolver dari Chrome Web Store.

Menggunakan Detektor CAPTCHA

  1. Tekan F12 untuk membuka alat pengembang
  2. Navigasi ke tab Capsolver Captcha Detector
  3. Pertahankan panel detektor sementara mengunjungi situs target Anda
  4. Aktifkan CAPTCHA di halaman

Penting: Jangan tutup panel CapSolver sebelum mengaktifkan CAPTCHA, karena menutupnya akan menghapus informasi yang sebelumnya terdeteksi.

Parameter yang Terdeteksi

Ekstensi secara otomatis mengidentifikasi semua parameter reCAPTCHA yang diperlukan:

  • URL Situs
  • Kunci Situs
  • pageAction (untuk v3)
  • isInvisible
  • isEnterprise
  • Api Domain

Detektor memberikan output JSON yang diformat siap untuk integrasi API, membuatnya mudah untuk menyalin parameter tepat yang dibutuhkan untuk tugas penyelesaian Anda.

Untuk detail lebih lanjut, lihat panduan lengkap mengenai mengidentifikasi parameter CAPTCHA.


Menyelesaikan reCAPTCHA v2 dengan API CapSolver

reCAPTCHA v2 adalah CAPTCHA checkbox "Saya bukan robot" klasik. Ini mungkin menampilkan tantangan pemilihan gambar kepada pengguna.

Menemukan Kunci Situs

Anda dapat menggunakan detektor ekstensi CapSolver (seperti yang dijelaskan di atas) atau menemukan kunci situs secara manual:

Cari di HTML halaman:

html Copy
<div class="g-recaptcha" data-sitekey="6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"></div>

Atau dalam JavaScript:

javascript Copy
grecaptcha.render('container', {'sitekey': '6Le-xxxxx...'});

Fungsi Bantuan

python Copy
# utils/capsolver_helper.py
import time
import requests
from shared.config import Config

def solve_recaptcha_v2(
    website_url: str,
    website_key: str,
    is_invisible: bool = False,
    timeout: int = 120
) -> dict:
    """
    Selesaikan reCAPTCHA v2 menggunakan API CapSolver.

    Args:
        website_url: URL halaman dengan CAPTCHA
        website_key: Kunci situs reCAPTCHA
        is_invisible: Apakah ini reCAPTCHA v2 invisible
        timeout: Waktu maksimum menunggu solusi (detik)

    Returns:
        dict dengan 'gRecaptchaResponse' token
    """

    if not Config.validate():
        raise Exception("Konfigurasi tidak valid - periksa kunci API Anda")

    # Bangun payload tugas
    task = {
        "type": "ReCaptchaV2TaskProxyLess",
        "websiteURL": website_url,
        "websiteKey": website_key,
    }

    if is_invisible:
        task["isInvisible"] = True

    payload = {
        "clientKey": Config.CAPSOLVER_API_KEY,
        "task": task
    }

    # Buat tugas
    response = requests.post(Config.CREATE_TASK_ENDPOINT, json=payload)
    result = response.json()

    if result.get("errorId") and result.get("errorId") != 0:
        raise Exception(f"Gagal membuat tugas: {result.get('errorDescription')}")

    task_id = result.get("taskId")

    # Poll hasil
    start_time = time.time()
    while time.time() - start_time < timeout:
        time.sleep(2)

        result_payload = {
            "clientKey": Config.CAPSOLVER_API_KEY,
            "taskId": task_id
        }

        response = requests.post(Config.GET_RESULT_ENDPOINT, json=result_payload)
        result = response.json()

        if result.get("status") == "ready":
            return result.get("solution", {})

        elif result.get("status") == "failed":
            raise Exception(f"Tugas gagal: {result.get('errorDescription')}")

    raise Exception(f"Timeout setelah {timeout} detik")

Contoh Lengkap reCAPTCHA v2

python Copy
from botasaurus.browser import browser, Driver
from shared.config import Config
from utils.capsolver_helper import solve_recaptcha_v2

DEMO_URL = "https://www.google.com/recaptcha/api2/demo"
DEMO_SITEKEY = "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"

@browser(headless=False)
def solve_recaptcha_v2_with_api(driver: Driver, data: dict):
    """Selesaikan reCAPTCHA v2 menggunakan API CapSolver dan sisipkan token."""

    url = data.get("url", DEMO_URL)
    site_key = data.get("site_key", DEMO_SITEKEY)

    # Langkah 1: Muat halaman
    driver.get(url)
    driver.sleep(2)

    # Langkah 2: Ekstrak kunci situs dari halaman (opsional)
    extracted_key = driver.run_js("""
        const recaptchaDiv = document.querySelector('.g-recaptcha');
        return recaptchaDiv ? recaptchaDiv.getAttribute('data-sitekey') : null;
    """)

    if extracted_key:
        site_key = extracted_key

    # Langkah 3: Selesaikan CAPTCHA via API CapSolver
    solution = solve_recaptcha_v2(
        website_url=url,
        website_key=site_key
    )

    token = solution.get("gRecaptchaResponse")

    # Langkah 4: Sisipkan token ke halaman
    driver.run_js(f"""
        // Atur nilai textarea tersembunyi
        const responseField = document.querySelector('[name="g-recaptcha-response"]');
        if (responseField) {{
            responseField.value = "{token}";
        }}

        // Aktifkan callback jika tersedia
        if (typeof ___grecaptcha_cfg !== 'undefined') {{
            try {{
                const clients = ___grecaptcha_cfg.clients;
                for (const key in clients) {{
                    const client = clients[key];
                    if (client && client.callback) {{
                        client.callback("{token}");
                    }}
                }}
            }} catch (e) {{}}
        }}
    """)

    # Langkah 5: Kirim formulir
    submit_button = driver.select('input[type="submit"]')
    if submit_button:
        submit_button.click()
        driver.sleep(2)

    return {"success": True, "token_length": len(token)}

# Jalankan demo
result = solve_recaptcha_v2_with_api(data={"url": DEMO_URL, "site_key": DEMO_SITEKEY})

Menyelesaikan reCAPTCHA v3 dengan API CapSolver

reCAPTCHA v3 adalah CAPTCHA yang tidak terlihat dan bekerja dengan menganalisis perilaku pengguna untuk menghasilkan skor dari 0.0 hingga 1.0.

Perbedaan utama dari v2: reCAPTCHA v3 memerlukan parameter pageAction.

Menemukan Page Action

Cara paling mudah untuk menemukan pageAction adalah menggunakan detektor ekstensi CapSolver. Alternatifnya, cari di JavaScript halaman:

javascript Copy
grecaptcha.execute('siteKey', {action: 'login'})
// 'login' adalah pageAction Anda

Fungsi Bantuan

python Copy
def solve_recaptcha_v3(
    website_url: str,
    website_key: str,
    page_action: str,
    timeout: int = 120
) -> dict:
    """
    Selesaikan reCAPTCHA v3 menggunakan API CapSolver.

    Args:
        website_url: URL halaman dengan CAPTCHA
        website_key: Kunci situs reCAPTCHA
        page_action: Parameter aksi (WAJIB untuk v3)
        timeout: Waktu maksimum menunggu solusi (detik)

    Returns:
        dict dengan 'gRecaptchaResponse' token
    """

    if not Config.validate():
        raise Exception("Konfigurasi tidak valid - periksa kunci API Anda")

    if not page_action:
        raise Exception("pageAction WAJIB untuk reCAPTCHA v3")

    # Bangun payload tugas
    task = {
        "type": "ReCaptchaV3TaskProxyLess",
        "websiteURL": website_url,
        "websiteKey": website_key,
        "pageAction": page_action,  # WAJIB untuk v3
    }

    payload = {
        "clientKey": Config.CAPSOLVER_API_KEY,
        "task": task
    }

    # Buat tugas
    response = requests.post(Config.CREATE_TASK_ENDPOINT, json=payload)
    result = response.json()

    if result.get("errorId") and result.get("errorId") != 0:
        raise Exception(f"Gagal membuat tugas: {result.get('errorDescription')}")

    task_id = result.get("taskId")

    # Poll hasil
    start_time = time.time()
    while time.time() - start_time < timeout:
        time.sleep(2)

        result_payload = {
            "clientKey": Config.CAPSOLVER_API_KEY,
            "taskId": task_id
        }

        response = requests.post(Config.GET_RESULT_ENDPOINT, json=result_payload)
        result = response.json()

        if result.get("status") == "ready":
            return result.get("solution", {})

        elif result.get("status") == "failed":
            raise Exception(f"Tugas gagal: {result.get('errorDescription')}")

    raise Exception(f"Timeout setelah {timeout} detik")

Contoh Lengkap reCAPTCHA v3

python Copy
from botasaurus.browser import browser, Driver
from shared.config import Config
from utils.capsolver_helper import solve_recaptcha_v3

DEMO_URL = "https://recaptcha-demo.appspot.com/recaptcha-v3-request-scores.php"
DEMO_SITEKEY = "6LdyC2cUAAAAACGuDKpXeDorzUDWXmdqeg-xy696"
PAGE_ACTION = "examples/v3scores"

@browser(headless=False)
def solve_recaptcha_v3_with_api(driver: Driver, data: dict):
    """Selesaikan reCAPTCHA v3 menggunakan API CapSolver dan sisipkan token."""

    url = data.get("url", DEMO_URL)
    site_key = data.get("site_key", DEMO_SITEKEY)
    page_action = data.get("page_action", PAGE_ACTION)

    # Langkah 1: Muat halaman
    driver.get(url)
    driver.sleep(2)

    # Langkah 2: Selesaikan CAPTCHA via API CapSolver
    solution = solve_recaptcha_v3(
        website_url=url,
        website_key=site_key,
        page_action=page_action
    )

    token = solution.get("gRecaptchaResponse")

    # Langkah 3: Sisipkan token ke halaman
    driver.run_js(f"""
        const token = "{token}";

        // Atur field tersembunyi jika ada
        const responseField = document.querySelector('[name="g-recaptcha-response"]');
        if (responseField) {{
            responseField.value = token;
        }}

        // Buat field tersembunyi jika formulir ada tetapi field tidak
        const forms = document.querySelectorAll('form');
        forms.forEach(form => {{
            let field = form.querySelector('[name="g-recaptcha-response"]');
            if (!field) {{
                field = document.createElement('input');
                field.type = 'hidden';
                field.name = 'g-recaptcha-response';
                form.appendChild(field);
            }}
            field.value = token;
        }});
    """)

    # Langkah 4: Kirim atau verifikasi
    buttons = driver.select_all("button")
    for button in buttons:
        if "verify" in button.text.lower() or "submit" in button.text.lower():
            button.click()
            driver.sleep(2)
            break

    return {"success": True, "token_length": len(token)}

# Jalankan demo
result = solve_recaptcha_v3_with_api(data={
    "url": DEMO_URL,
    "site_key": DEMO_SITEKEY,
    "page_action": PAGE_ACTION
})

Menyelesaikan Cloudflare Turnstile dengan API CapSolver

Cloudflare Turnstile adalah alternatif CAPTCHA yang fokus pada privasi dan dirancang untuk lebih tidak mengganggu daripada CAPTCHA tradisional.

Perbedaan utama dari reCAPTCHA:

  • Tipe tugas adalah AntiTurnstileTaskProxyLess
  • Field respons adalah token (bukan gRecaptchaResponse)
  • Kunci situs biasanya dimulai dengan 0x4

Menemukan Kunci Situs

Cari di HTML halaman:

html Copy
<div class="cf-turnstile" data-sitekey="0x4AAAAAAABS7vwvV6VFfMcD"></div>

Fungsi Bantuan

python Copy
def solve_turnstile(
    website_url: str,
    website_key: str,
    action: str = None,
    cdata: str = None,
    timeout: int = 120
) -> dict:
    """
Selesaikan Cloudflare Turnstile menggunakan API CapSolver.

    Args:
        url_website: URL halaman dengan Turnstile
        kunci_website: Kunci situs Turnstile (dimulai dengan 0x4)
        aksi: Aksi opsional dari atribut data-action
        cdata: Cdata opsional dari atribut data-cdata
        timeout: Waktu maksimum untuk menunggu solusi (detik)

    Returns:
        dict dengan bidang 'token'
    """

    if not Config.validate():
        raise Exception("Konfigurasi tidak valid - periksa API key Anda")

    # Bangun payload tugas
    tugas = {
        "type": "AntiTurnstileTaskProxyLess",
        "websiteURL": url_website,
        "websiteKey": kunci_website,
    }

    # Tambahkan metadata opsional
    metadata = {}
    if aksi:
        metadata["aksi"] = aksi
    if cdata:
        metadata["cdata"] = cdata

    if metadata:
        tugas["metadata"] = metadata

    payload = {
        "clientKey": Config.CAPSOLVER_API_KEY,
        "tugas": tugas
    }

    # Buat tugas
    response = requests.post(Config.CREATE_TASK_ENDPOINT, json=payload)
    result = response.json()

    if result.get("errorId") and result.get("errorId") != 0:
        raise Exception(f"Gagal membuat tugas: {result.get('errorDescription')}")

    id_tugas = result.get("taskId")

    # Poll untuk hasil
    start_time = time.time()
    while time.time() - start_time < timeout:
        time.sleep(2)

        result_payload = {
            "clientKey": Config.CAPSOLVER_API_KEY,
            "taskId": id_tugas
        }

        response = requests.post(Config.GET_RESULT_ENDPOINT, json=result_payload)
        result = response.json()

        if result.get("status") == "ready":
            return result.get("solution", {})

        elif result.get("status") == "failed":
            raise Exception(f"Tugas gagal: {result.get('errorDescription')}")

    raise Exception(f"Waktu habis setelah {timeout} detik")

Contoh Lengkap Turnstile

python Copy
from botasaurus.browser import browser, Driver
from shared.config import Config
from utils.capsolver_helper import solve_turnstile

DEMO_URL = "https://peet.ws/turnstile-test/non-interactive.html"
DEMO_SITEKEY = "0x4AAAAAAABS7vwvV6VFfMcD"

@browser(headless=False)
def solve_turnstile_with_api(driver: Driver, data: dict):
    """Selesaikan Cloudflare Turnstile menggunakan API CapSolver dan sisipkan token."""

    url = data.get("url", DEMO_URL)
    kunci_site = data.get("site_key", DEMO_SITEKEY)

    # Langkah 1: Muat halaman
    driver.get(url)
    driver.sleep(3)

    # Langkah 2: Ekstrak kunci situs dari halaman (opsional)
    extracted_params = driver.run_js("""
        const turnstileDiv = document.querySelector('.cf-turnstile, [data-sitekey]');
        if (turnstileDiv) {
            const key = turnstileDiv.getAttribute('data-sitekey');
            if (key && key.startsWith('0x')) {
                return {
                    sitekey: key,
                    action: turnstileDiv.getAttribute('data-action')
                };
            }
        }
        return null;
    """)

    if extracted_params and extracted_params.get("sitekey"):
        kunci_site = extracted_params["sitekey"]

    # Langkah 3: Selesaikan Turnstile via API CapSolver
    solution = solve_turnstile(
        url_website=url,
        kunci_website=kunci_site,
        aksi=extracted_params.get("action") if extracted_params else None
    )

    token = solution.get("token")

    # Langkah 4: Sisipkan token ke halaman
    driver.run_js(f"""
        const token = "{token}";

        // Cari dan isi bidang cf-turnstile-response
        const responseFields = [
            document.querySelector('[name="cf-turnstile-response"]'),
            document.querySelector('[name="cf_turnstile_response"]'),
            document.querySelector('input[name*="turnstile"]')
        ];

        for (const field of responseFields) {{
            if (field) {{
                field.value = token;
                break;
            }}
        }}

        // Buat bidang tersembunyi jika form ada tapi field tidak
        const forms = document.querySelectorAll('form');
        forms.forEach(form => {{
            let field = form.querySelector('[name="cf-turnstile-response"]');
            if (!field) {{
                field = document.createElement('input');
                field.type = 'hidden';
                field.name = 'cf-turnstile-response';
                form.appendChild(field);
            }}
            field.value = token;
        }});
    """)

    # Langkah 5: Kirim formulir
    submit_btn = driver.select('button[type="submit"], input[type="submit"]')
    if submit_btn:
        submit_btn.click()
        driver.sleep(2)

    return {"success": True, "panjang_token": len(token)}

# Jalankan demo
result = solve_turnstile_with_api(data={"url": DEMO_URL, "site_key": DEMO_SITEKEY})

Referensi Jenis Tugas

Jenis Captcha Jenis Tugas Bidang Respons Parameter yang Diperlukan
reCAPTCHA v2 ReCaptchaV2TaskProxyLess gRecaptchaResponse websiteURL, websiteKey
reCAPTCHA v2 Enterprise ReCaptchaV2EnterpriseTaskProxyLess gRecaptchaResponse websiteURL, websiteKey
reCAPTCHA v3 ReCaptchaV3TaskProxyLess gRecaptchaResponse websiteURL, websiteKey, pageAction
reCAPTCHA v3 Enterprise ReCaptchaV3EnterpriseTaskProxyLess gRecaptchaResponse websiteURL, websiteKey, pageAction
Cloudflare Turnstile AntiTurnstileTaskProxyLess token websiteURL, websiteKey

Untuk situs yang memblokir IP datacenter, gunakan varian proxy (misalnya ReCaptchaV2Task) dan berikan proxy residensial Anda sendiri.


Praktik Terbaik

1. Kedaluwarsa Token

Token captcha kedaluwarsa dengan cepat (biasanya dalam 2 menit). Selalu gunakan token segera setelah menerimanya:

python Copy
# Dapatkan token
solution = solve_recaptcha_v2(url, kunci_site)
token = solution.get("gRecaptchaResponse")

# Gunakan segera - jangan simpan untuk nanti
driver.run_js(f'document.querySelector("[name=g-recaptcha-response]").value = "{token}"')
driver.select('button[type="submit"]').click()

2. Penanganan Kesalahan

Selalu implementasikan penanganan kesalahan yang tepat untuk kegagalan API:

python Copy
try:
    solution = solve_recaptcha_v2(url, kunci_site)
except Exception as e:
    print(f"Pemecahan captcha gagal: {e}")
    # Implementasikan logika ulang atau fallback

3. Pembatasan Kecepatan

Tambahkan jeda antara permintaan untuk menghindari pengaktifan pengukuran anti-bot:

python Copy
driver.sleep(2)  # Tunggu setelah muat halaman
# ... selesaikan captcha ...
driver.sleep(1)  # Tunggu sebelum pengiriman formulir

4. Validasi Konfigurasi

Selalu validasi API key Anda sebelum membuat permintaan:

python Copy
if not Config.validate():
    raise Exception("Silakan konfigurasi API key Anda di file .env")

Kesimpulan

Menggabungkan Botasaurus dengan CapSolver memberikan solusi yang andal untuk menangani captcha dalam proyek scraping web. Pendekatan berbasis API memberi Anda kontrol penuh atas proses penyelesaian dan bekerja secara andal di berbagai jenis captcha.

Tingkatkan anggaran otomasi Anda secara instan!
Gunakan kode bonus CAPN saat menambahkan dana ke akun CapSolver Anda untuk mendapatkan tambahan 5% bonus pada setiap pengisian ulang — tanpa batas.
Tukarkan sekarang di Dashboard CapSolver Anda

Poin Utama

  • Botasaurus menyediakan otomatisasi browser dengan fitur anti-pendeteksian yang terintegrasi
  • API CapSolver menawarkan cara andal untuk menyelesaikan berbagai jenis captcha secara programatis
  • reCAPTCHA v2 memerlukan parameter websiteURL dan websiteKey
  • reCAPTCHA v3 memerlukan parameter tambahan pageAction
  • Cloudflare Turnstile mengembalikan bidang token alih-alih gRecaptchaResponse
  • Token kedaluwarsa dengan cepat (~2 menit), jadi gunakan segera setelah menerima

Pertanyaan yang Sering Diajukan (FAQ)

Bagaimana cara menyelesaikan reCAPTCHA dan Cloudflare Turnstile secara otomatis dalam web scraping Python?

Metode yang paling efektif adalah menggunakan framework otomatisasi browser yang kuat seperti Botasaurus, yang menangani anti-detect, dan mengintegrasikannya dengan API penyelesaian captcha khusus seperti CapSolver untuk mendapatkan token solusi secara programatis.

Apa keuntungan menggunakan Botasaurus untuk web scraping anti-detect?

Botasaurus menyederhanakan otomatisasi browser dengan API berbasis dekorator yang bersih sambil menyediakan fitur stealth esensial untuk meminimalkan risiko terdeteksi dan diblokir oleh situs target.

Apa perbedaan antara penyelesaian reCAPTCHA v2 dan v3 dengan API CapSolver?

Meskipun keduanya memerlukan parameter websiteURL dan websiteKey, penyelesaian reCAPTCHA v3 (versi tidak terlihat, berbasis skor) secara tambahan memerlukan parameter pageAction yang harus dimasukkan dalam payload tugas yang dikirim ke API CapSolver.

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 Menyelesaikan CAPTCHA dengan Python Menggunakan Botasaurus dan CapSolver (Panduan Lengkap)
Cara Menyelesaikan CAPTCHAs dengan Python Menggunakan Botasaurus dan CapSolver (Panduan Lengkap)

Pelajari cara mengintegrasikan Botasaurus (kerangka kerja pengambilan data web Python) dengan API CapSolver untuk menyelesaikan reCAPTCHA v2/v3 dan Turnstile secara otomatis.

web scraping
Logo of CapSolver

Emma Foster

15-Dec-2025

kesalahan pengambilan data web
Apa itu Kesalahan 402, 403, 404, dan 429 dalam Web Scraping? Panduan Lengkap

Menguasai penanganan kesalahan web scraping dengan memahami apa yang merupakan kesalahan 402, 403, 404, dan 429. Belajar cara memperbaiki kesalahan 403 Dilarang, menerapkan solusi pembatasan laju untuk kesalahan 429, dan menangani kode status 402 Pembayaran Diperlukan yang baru muncul.

web scraping
Logo of CapSolver

Aloísio Vítor

12-Dec-2025

Pengambilan Data Web Dengan Python
Web Scraping Dengan Python: 2026 Taktik Terbaik

Pelajari taktik pengambilan data web Python teratas untuk 2026, termasuk menangani konten JavaScript dinamis, mengelola alur otentikasi, menyelesaikan CAPTCHA, mengidentifikasi perangkap tersembunyi, meniru perilaku manusia, mengoptimalkan pola permintaan, dan mengurangi penggunaan sumber daya dalam proyek pengambilan data web skala besar.

web scraping
Logo of CapSolver

Ethan Collins

12-Dec-2025

Menyelesaikan CAPTCHA web scraping
Pengambilan Data Web Tanpa Terblokir dan Cara Mengatasi Captcha Web Scraping

Scrapping web telah menjadi teknik yang populer untuk mengekstrak data dari situs web. Namun, banyak situs web menggunakan langkah anti-scrapping, termasuk...

web scraping
Logo of CapSolver

Ethan Collins

11-Dec-2025

Penelusuran Web dan Pengambilan Data Web
Penjelajahan Web vs. Pengambilan Data Web: Perbedaan Essensial

Ketahui perbedaan penting antara web crawling dan web scraping. Pelajari tujuan mereka yang berbeda, 10 penggunaan kasus yang kuat, dan bagaimana CapSolver membantu melewati blok AWS WAF dan CAPTCHA untuk pengumpulan data yang mulus.

web scraping
Logo of CapSolver

Nikolai Smirnov

09-Dec-2025

Cara Mengatasi Captchas Saat Scrapping Web dengan Scrapling dan CapSolver
Cara Menyelesaikan Captchas Ketika Web Scraping dengan Scrapling dan CapSolver

Scrapling + CapSolver memungkinkan pengambilan data otomatis dengan ReCaptcha v2/v3 dan Cloudflare Turnstile bypass.

web scraping
Logo of CapSolver

Adélia Cruz

05-Dec-2025