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

Relevance AI dengan CapSolver
Cara menyelesaikan reCAPTCHA v2 di Relevance AI dengan Integrasi CapSolver

Kembangkan alat Relevance AI untuk menyelesaikan reCAPTCHA v2 menggunakan CapSolver. Otomatisasi pengajuan formulir melalui API tanpa otomatisasi browser.

web scraping
Logo of CapSolver

Ethan Collins

03-Feb-2026

Larangan IP pada 2026: Bagaimana Cara Kerjanya dan Cara Praktis untuk Menghindarinya
Larangan IP pada 2026: Bagaimana Cara Kerjanya dan Cara Praktis untuk Mengelaknya

Pelajari cara menghindari pembatasan IP pada 2026 dengan panduan lengkap kami. Temukan teknik pemblokiran IP modern dan solusi praktis seperti proxy residensial dan solver CAPTCHA.

web scraping
Logo of CapSolver

Emma Foster

26-Jan-2026

Maxun dengan Integrasi CapSolver
Cara Menyelesaikan Captcha di Maxun dengan Integrasi CapSolver

Panduan praktis untuk mengintegrasikan CapSolver dengan Maxun dalam penggunaan nyata pengambilan data web. Pelajari cara mengelola reCAPTCHA, Cloudflare Turnstile, dan situs yang dilindungi CAPTCHA dengan menggunakan alur kerja pre-auth dan robot.

web scraping
Logo of CapSolver

Adélia Cruz

21-Jan-2026

Browser4 dengan Integrasi CapSolver
Cara menyelesaikan Captcha di Browser4 dengan integrasi CapSolver

Otomasi Browser4 dengan throughput tinggi dikombinasikan dengan CapSolver untuk menangani tantangan CAPTCHA dalam ekstraksi data web skala besar.

web scraping
Logo of CapSolver

Anh Tuan

21-Jan-2026

Apa Itu Bot Scraping dan Cara Membuatnya
Apa itu Bot Scraping dan Bagaimana Cara Membuatnya

Pelajari apa itu bot scraping dan cara membuatnya untuk ekstraksi data otomatis. Jelajahi alat terbaik, teknik navigasi keamanan, dan praktik scraping yang etis.

web scraping
Logo of CapSolver

Emma Foster

16-Jan-2026

Scrapy vs. Selenium
Scrapy vs. Selenium: Mana yang Terbaik untuk Proyek Scraping Web Anda?

Temukan kekuatan dan perbedaan antara Scrapy dan Selenium untuk pengambilan data web. Pelajari alat mana yang paling sesuai dengan proyek Anda dan cara mengatasi tantangan seperti CAPTCHA.

web scraping
Logo of CapSolver

Emma Foster

14-Jan-2026