CAPSOLVER
Blog
Cara Mengintegrasikan Helium dengan CapSolver untuk Penyelesaian CAPTCHA yang Lancar

Cara Mengintegrasikan Helium dengan CapSolver untuk Penyelesaian CAPTCHA yang Berjalan Lancar

Logo of CapSolver

Lucas Mitchell

Automation Engineer

30-Dec-2025

Integrasikan Helium dengan CapSolver

1. Pendahuluan

Otomsasi web memerlukan alat yang kuat dan mudah digunakan. Namun, situs web modern menerapkan langkah anti-bot yang canggih dan CAPTCHA yang dapat menghentikan skrip otomatisasi.

Kombinasi Helium dan CapSolver memberikan solusi yang elegan:

  • Helium: Perpustakaan Python ringan yang membuat Selenium lebih mudah digunakan dengan API yang sederhana dan mudah dibaca
  • CapSolver: Layanan penyelesaian CAPTCHA yang didukung AI yang menangani Cloudflare Turnstile, reCAPTCHA, dan lainnya

Bersama, alat-alat ini memungkinkan otomatisasi web yang mulus yang menangani tantangan CAPTCHA secara otomatis.

1.1. Tujuan Integrasi

Panduan ini akan membantu Anda mencapai tiga tujuan inti:

  1. Mempermudah Otomatisasi Browser - Gunakan API yang intuitif dari Helium untuk kode yang bersih dan mudah dibaca
  2. Menyelesaikan CAPTCHA Secara Otomatis - Integrasikan API CapSolver untuk menangani tantangan CAPTCHA tanpa intervensi manual
  3. Mempertahankan Fleksibilitas - Akses ke kekuatan penuh Selenium ketika diperlukan sambil tetap menjaga kode sederhana

2. Apa itu Helium?

Helium adalah perpustakaan Python yang membuat Selenium jauh lebih mudah digunakan. Ia menyediakan API tingkat tinggi yang memungkinkan Anda menulis otomatisasi browser dalam bahasa Inggris murni.

2.1. Fitur Utama

  • Sintaks Sederhana - Tulis click("Kirim") alih-alih selektor XPath yang rumit
  • Pengaturan Otomatis - Secara otomatis menunggu elemen muncul
  • Bacaan Manusia - Kode terbaca seperti instruksi: write("Halo", into="Pencarian")
  • Kompatibel dengan Selenium - Akses ke driver Selenium yang mendasar ketika diperlukan
  • Ringan - Overhead minimal di atas Selenium

2.2. Instalasi

bash Copy
# Instal Helium
pip install helium

# Instal perpustakaan requests untuk API CapSolver
pip install requests

2.3. Penggunaan Dasar

python Copy
from helium import *

# Mulai browser dan navigasi
start_chrome("https://wikipedia.org")

# Ketik ke kotak pencarian
write("Pemrograman Python", into=S("input[name='search']"))

# Klik tombol pencarian
click(Button("Cari"))

# Periksa apakah teks ada
if Text("Python").exists():
    print("Artikel Python ditemukan!")

# Tutup browser
kill_browser()

3. Apa itu CapSolver?

CapSolver adalah layanan penyelesaian CAPTCHA otomatis berbasis AI yang mendukung berbagai jenis CAPTCHA. Ia menyediakan API sederhana yang memungkinkan Anda mengirim tantangan CAPTCHA dan menerima solusi dalam hitungan detik.

3.1. Jenis CAPTCHA yang Didukung

  • Cloudflare Turnstile - Tantangan anti-bot modern yang paling umum
  • reCAPTCHA v2 - Variasi berbasis gambar dan tidak terlihat
  • reCAPTCHA v3 - Verifikasi berbasis skor
  • AWS WAF - CAPTCHA Amazon Web Services
  • DataDome - Perlindungan bot perusahaan
  • Dan banyak lagi...

3.2. Mulai dengan CapSolver

  1. Daftar di capsolver.com
  2. Tambahkan dana ke akun Anda
  3. Dapatkan kunci API Anda dari dashboard

Bonus: Gunakan kode HELIUM saat mendaftar untuk menerima kredit bonus!

3.3. Titik Akhir API

  • Server A: https://api.capsolver.com
  • Server B: https://api-stable.capsolver.com

4. Tantangan Sebelum Integrasi

Sebelum menggabungkan Helium dengan CapSolver, otomatisasi web menghadapi beberapa tantangan:

Tantangan Dampak
Tantangan CAPTCHA Dibutuhkan penyelesaian manual, menghentikan otomatisasi
Selektor kompleks Selenium memerlukan selektor XPath/CSS yang panjang
Masalah waktu Elemen tidak siap saat diakses
Keterbacaan kode Skrip otomatisasi menjadi sulit dipelihara

Integrasi Helium + CapSolver menyelesaikan tantangan ini dengan kode yang bersih dan mudah dibaca.

5. Metode Integrasi

5.1. Integrasi API (Rekomendasi)

Pendekatan integrasi API memberi Anda kendali penuh atas proses penyelesaian CAPTCHA dan bekerja dengan semua jenis CAPTCHA.

5.1.1. Persyaratan Pemenuhan

bash Copy
pip install helium requests

5.1.2. Pola Integrasi Inti

python Copy
import time
import requests
from helium import *

CAPSOLVER_API_KEY = "KUNCI_API_ANDA"
CAPSOLVER_API = "https://api.capsolver.com"


def create_task(task_payload: dict) -> str:
    """Buat tugas penyelesaian CAPTCHA dan kembalikan ID tugas."""
    response = requests.post(
        f"{CAPSOLVER_API}/createTask",
        json={
            "clientKey": CAPSOLVER_API_KEY,
            "task": task_payload
        }
    )
    result = response.json()
    if result.get("errorId") != 0:
        raise Exception(f"Kesalahan CapSolver: {result.get('errorDescription')}")
    return result["taskId"]


def get_task_result(task_id: str, max_attempts: int = 120) -> dict:
    """Poll hasil tugas hingga selesai atau timeout."""
    for _ in range(max_attempts):
        response = requests.post(
            f"{CAPSOLVER_API}/getTaskResult",
            json={
                "clientKey": CAPSOLVER_API_KEY,
                "taskId": task_id
            }
        )
        result = response.json()

        if result.get("status") == "ready":
            return result["solution"]
        elif result.get("status") == "failed":
            raise Exception(f"Tugas gagal: {result.get('errorDescription')}")

        time.sleep(1)

    raise TimeoutError("Penyelesaian CAPTCHA timeout")


def solve_captcha(task_payload: dict) -> dict:
    """Lengkapi alur kerja penyelesaian CAPTCHA."""
    task_id = create_task(task_payload)
    return get_task_result(task_id)

5.2. Ekstensi Browser

Anda juga dapat menggunakan ekstensi CapSolver dengan Helium untuk deteksi dan penyelesaian CAPTCHA otomatis.

5.2.1. Langkah Instalasi

  1. Unduh ekstensi CapSolver dari capsolver.com/en/extension
  2. Ekstrak file ekstensi
  3. Konfigurasi kunci API Anda di file config.js ekstensi:
javascript Copy
// Di folder ekstensi, edit: assets/config.js
var defined = {
    apiKey: "KUNCI_API_CAPSOLVER_ANDA",  // Ganti dengan kunci API Anda yang sebenarnya
    enabledForBlacklistControl: false,
    blackUrlList: [],
    enabledForRecaptcha: true,
    enabledForRecaptchaV3: true,
    enabledForTurnstile: true,
    // ... pengaturan lainnya
}
  1. Muat ke Chrome melalui Helium:
python Copy
from helium import *
from selenium.webdriver import ChromeOptions

options = ChromeOptions()
options.add_argument('--load-extension=/path/to/capsolver-extension')

start_chrome(options=options)
# Ekstensi akan secara otomatis mendeteksi dan menyelesaikan CAPTCHA

Catatan: Ekstensi harus memiliki kunci API yang valid dikonfigurasi sebelum dapat menyelesaikan CAPTCHA secara otomatis.

6. Contoh Kode

6.1. Menyelesaikan reCAPTCHA v2

Contoh ini menyelesaikan reCAPTCHA v2 di halaman demo Google dengan deteksi kunci situs otomatis:

python Copy
import time
import requests
from helium import *
from selenium.webdriver import ChromeOptions

CAPSOLVER_API_KEY = "KUNCI_API_ANDA"
CAPSOLVER_API = "https://api.capsolver.com"


def solve_recaptcha_v2(site_key: str, page_url: str) -> str:
    """Selesaikan reCAPTCHA v2 dan kembalikan token."""
    # Buat tugas
    response = requests.post(
        f"{CAPSOLVER_API}/createTask",
        json={
            "clientKey": CAPSOLVER_API_KEY,
            "task": {
                "type": "ReCaptchaV2TaskProxyLess",
                "websiteURL": page_url,
                "websiteKey": site_key,
            }
        }
    )
    result = response.json()

    if result.get("errorId") != 0:
        raise Exception(f"Kesalahan: {result.get('errorDescription')}")

    task_id = result["taskId"]
    print(f"Tugas dibuat: {task_id}")

    # Poll hasil
    while True:
        result = requests.post(
            f"{CAPSOLVER_API}/getTaskResult",
            json={
                "clientKey": CAPSOLVER_API_KEY,
                "taskId": task_id
            }
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["gRecaptchaResponse"]
        elif result.get("status") == "failed":
            raise Exception(f"Gagal: {result.get('errorDescription')}")

        print("  Menunggu solusi...")
        time.sleep(1)


def main():
    target_url = "https://www.google.com/recaptcha/api2/demo"

    # Konfigurasi browser dengan anti-detect
    options = ChromeOptions()
    options.add_experimental_option('excludeSwitches', ['enable-automation'])
    options.add_experimental_option('useAutomationExtension', False)
    options.add_argument('--disable-blink-features=AutomationControlled')

    print("Memulai browser...")
    start_chrome(target_url, options=options)
    driver = get_driver()

    try:
        time.sleep(2)

        # Deteksi kunci situs dari halaman
        recaptcha_element = driver.find_element("css selector", ".g-recaptcha")
        site_key = recaptcha_element.get_attribute("data-sitekey")
        print(f"Kunci situs terdeteksi: {site_key}")

        # Selesaikan CAPTCHA
        print("\nMenyelesaikan reCAPTCHA v2 dengan CapSolver...")
        token = solve_recaptcha_v2(site_key, target_url)
        print(f"Dapatkan token: {token[:50]}...")

        # Masukkan token
        print("\nMemasukkan token...")
        driver.execute_script(f'''
            var responseField = document.getElementById('g-recaptcha-response');
            responseField.style.display = 'block';
            responseField.value = '{token}';
        ''')
        print("Token dimasukkan!")

        # Kirim formulir menggunakan sintaks sederhana Helium
        print("\nMengirim formulir...")
        click("Kirim")

        time.sleep(3)

        # Periksa keberhasilan
        if "Verifikasi Berhasil" in driver.page_source:
            print("\n=== BERHASIL! ===")
            print("reCAPTCHA telah diselesaikan dan formulir telah dikirim!")

    finally:
        kill_browser()


if __name__ == "__main__":
    main()

Uji sendiri:

bash Copy
python demo_recaptcha_v2.py

6.2. Menyelesaikan Cloudflare Turnstile

Cloudflare Turnstile adalah salah satu tantangan CAPTCHA yang paling umum. Berikut cara menyelesaikannya:

python Copy
import time
import requests
from helium import *
from selenium.webdriver import ChromeOptions

CAPSOLVER_API_KEY = "KUNCI_API_ANDA"
CAPSOLVER_API = "https://api.capsolver.com"


def solve_turnstile(site_key: str, page_url: str) -> str:
    """Selesaikan Cloudflare Turnstile dan kembalikan token."""
    response = requests.post(
        f"{CAPSOLVER_API}/createTask",
        json={
            "clientKey": CAPSOLVER_API_KEY,
            "task": {
                "type": "AntiTurnstileTaskProxyLess",
                "websiteURL": page_url,
                "websiteKey": site_key,
            }
        }
    )
    result = response.json()

    if result.get("errorId") != 0:
        raise Exception(f"Kesalahan: {result.get('errorDescription')}")

    task_id = result["taskId"]

    while True:
        result = requests.post(
            f"{CAPSOLVER_API}/getTaskResult",
            json={
                "clientKey": CAPSOLVER_API_KEY,
                "taskId": task_id
            }
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["token"]
        elif result.get("status") == "failed":
            raise Exception(f"Gagal: {result.get('errorDescription')}")

        time.sleep(1)


def main():
    target_url = "https://situs-target-anda.com"
    turnstile_site_key = "0x4XXXXXXXXXXXXXXXXX"  # Temukan di sumber halaman

    # Konfigurasi browser
    options = ChromeOptions()
    options.add_argument('--disable-blink-features=AutomationControlled')

    start_chrome(target_url, options=options)
    driver = get_driver()

    try:
        # Tunggu Turnstile dimuat
        time.sleep(3)

        # Selesaikan CAPTCHA
        print("Menyelesaikan Turnstile...")
        token = solve_turnstile(turnstile_site_key, target_url)
        print(f"Dapatkan token: {token[:50]}...")

        # Masukkan token
        driver.execute_script(f'''
            document.querySelector('input[name="cf-turnstile-response"]').value = "{token}";

            // Aktifkan callback jika tersedia
            const callback = document.querySelector('[data-callback]');
            if (callback) {{
                const callbackName = callback.getAttribute('data-callback');
                if (window[callbackName]) {{
                    window[callbackName]('{token}');
                }}
            }}
        ''')

        # Kirim formulir menggunakan Helium
        if Button("Kirim").exists():
            click("Kirim")

        print("Turnstile berhasil dilewati!")

    finally:
        kill_browser()


if __name__ == "__main__":
    main()

6.3. Menyelesaikan reCAPTCHA v3

reCAPTCHA v3 berbasis skor dan tidak memerlukan interaksi pengguna:

python Copy
import time
import requests
from helium import *
from selenium.webdriver import ChromeOptions

CAPSOLVER_API_KEY = "KUNCI_API_ANDA"
CAPSOLVER_API = "https://api.capsolver.com"


def solve_recaptcha_v3(
    site_key: str,
    page_url: str,
    action: str = "verify",
    min_score: float = 0.7
) -> str:
    """Selesaikan reCAPTCHA v3 dengan tindakan dan skor minimum yang ditentukan."""
    response = requests.post(
        f"{CAPSOLVER_API}/createTask",
        json={
            "clientKey": CAPSOLVER_API_KEY,
            "task": {
                "type": "ReCaptchaV3TaskProxyLess",
                "websiteURL": page_url,
                "websiteKey": site_key,
                "pageAction": action,
                "minScore": min_score
            }
        }
    )
    result = response.json()

    if result.get("errorId") != 0:
        raise Exception(f"Kesalahan: {result.get('errorDescription')}")

    task_id = result["taskId"]

    while True:
        result = requests.post(
            f"{CAPSOLVER_API}/getTaskResult",
            json={
                "clientKey": CAPSOLVER_API_KEY,
                "taskId": task_id
            }
        ).json()

        if result.get("status") == "ready":
            return result["solution"]["gRecaptchaResponse"]
        elif result.get("status") == "failed":
            raise Exception(f"Gagal: {result.get('errorDescription')}")

        time.sleep(1)


def main():
    target_url = "https://situs-target-anda.com"
    recaptcha_v3_key = "6LcXXXXXXXXXXXXXXXXXXXXXXXXX"

    # Siapkan browser tanpa tampilan
    options = ChromeOptions()
    options.add_argument('--headless')

    start_chrome(target_url, options=options)
    driver = get_driver()

    try:
        # Selesaikan reCAPTCHA v3 dengan tindakan "login"
        print("Menyelesaikan reCAPTCHA v3...")
        token = solve_recaptcha_v3(
            recaptcha_v3_key,
            target_url,
            action="login",
            min_score=0.9
        )

        # Masukkan token
        driver.execute_script(f'''
            var responseField = document.querySelector('[name="g-recaptcha-response"]');
            if (responseField) {{

responseField.value = '{token}';
}}
// Panggil callback jika ada
if (typeof onRecaptchaSuccess === 'function') {{
onRecaptchaSuccess('{token}');
}}
''')

Copy
    print("reCAPTCHA v3 berhasil dilewati!")

finally:
    matikan_browser()

if name == "main":
utama()

Copy
## 7. Praktik Terbaik

### 7.1. Konfigurasi Browser

Atur Chrome agar terlihat lebih seperti browser biasa:

```python
from helium import *
from selenium.webdriver import ChromeOptions

options = ChromeOptions()
options.add_experimental_option('excludeSwitches', ['enable-automation'])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_argument('--window-size=1920,1080')

mulai_chrome(options=options)

7.2. Menggabungkan Helium dengan Selenium

Gunakan sintaks sederhana Helium untuk kebanyakan operasi, tetapi akses Selenium saat diperlukan:

python Copy
from helium import *

mulai_chrome("https://target-site.com")

# Gunakan Helium untuk interaksi sederhana
tulis("username", ke="Email")
tulis("password", ke="Password")

# Akses driver Selenium untuk operasi kompleks
driver = dapatkan_driver()
driver.execute_script("window.scrollTo(0, document.body.scrollHeight)")

# Kembali ke Helium
klik("Login")

7.3. Pembatasan Kecepatan

Hindari pembatasan kecepatan dengan menambahkan jeda acak:

python Copy
import random
import time

def jeda_manusia(min_detik=1.0, max_detik=3.0):
    """Jeda acak untuk meniru perilaku manusia."""
    time.sleep(random.uniform(min_detik, max_detik))

# Gunakan antara tindakan
klik("Berikutnya")
jeda_manusia()
tulis("data", ke="Input")

7.4. Penanganan Kesalahan

Selalu implementasikan penanganan kesalahan yang tepat untuk penyelesaian CAPTCHA:

python Copy
def selesaikan_dengan_uliang(payload_tugas: dict, maks_ulang: int = 3) -> dict:
    """Men

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

Apa itu Scraping AI
Apa itu AI Scraping? Definisi, Manfaat, Kasus Penggunaan.

Ketahui apa itu scraping AI, bagaimana cara kerjanya, dan mengapa itu menggantikan scraping web tradisional. Pelajari manfaat, kasus penggunaan, dan cara mengatasi pengukuran anti-bot.

web scraping
Logo of CapSolver

Emma Foster

31-Dec-2025

Mengintegrasikan Helium dengan CapSolver
Cara Mengintegrasikan Helium dengan CapSolver untuk Penyelesaian CAPTCHA yang Berjalan Lancar

Gunakan Helium dengan CapSolver untuk otomatisasi browser dan menyelesaikan Cloudflare Turnstile, reCAPTCHA v2/v3 dengan Python dan Selenium.

web scraping
Logo of CapSolver

Lucas Mitchell

30-Dec-2025

DrissionPage Penyelesaian Captcha
Cara Mengintegrasikan DrissionPage dengan CapSolver untuk Penyelesaian CAPTCHA yang Lancar

Tutorial DrissionPage + CapSolver untuk mengatasi Cloudflare Turnstile dan reCAPTCHA tanpa deteksi WebDriver.

web scraping
Logo of CapSolver

Adélia Cruz

30-Dec-2025

penggalian web
Top 5 Layanan Pengambilan Data Web

Jasa web scraping adalah solusi yang membantu Anda mengekstrak data dari situs web dan mengorganisirnya menjadi format yang dapat digunakan. Mereka dapat menghemat waktu dan uang dengan mengotomatisasi tugas yang melelahkan dan rumit dalam ekstraksi data. Baik Anda membutuhkan pengiriman sekali atau aliran data yang berkelanjutan, jasa web scraping dapat menangani aspek teknis dan menyampaikan data yang Anda butuhkan.

web scraping
Logo of CapSolver

Sora Fujimoto

26-Dec-2025

Menyelesaikan CAPTCHA di Kesehatan
Cara Mengatasi CAPTCHA dalam Alur Kerja Verifikasi Izin Kesehatan

Berhenti memblokir kepatuhan Anda dengan CAPTCHA. Pelajari cara mengotomasi alur kerja verifikasi lisensi di bidang kesehatan menggunakan penyelesaian CAPTCHA berbasis AI untuk reCAPTCHA dan AWS WAF.

web scraping
Logo of CapSolver

Ethan Collins

25-Dec-2025

MCP
Pemaster MCP: Tingkatkan Kecerdasan AI pada 2026

Protokol Konteks Model (MCP) adalah masa depan integrasi AI. Pelajari bagaimana MCP menstandarkan komunikasi antara alat AI, mendorong otomatisasi perusahaan, dan meningkatkan kecerdasan AI pada tahun 2026.

web scraping
Logo of CapSolver

Adélia Cruz

24-Dec-2025