ProdukIntegrasiSumber DayaDokumentasiHarga
Mulai Sekarang

© 2026 CapSolver. All rights reserved.

Hubungi Kami

Slack: lola@capsolver.com

Produk

  • reCAPTCHA v2
  • reCAPTCHA v3
  • Cloudflare Turnstile
  • Cloudflare Challenge
  • AWS WAF
  • Ekstensi Browser
  • Lebih banyak jenis CAPTCHA

Integrasi

  • Selenium
  • Playwright
  • Puppeteer
  • n8n
  • Mitra
  • Lihat semua integrasi

Sumber Daya

  • Program Referensi
  • Dokumentasi
  • Referensi API
  • Blog
  • FAQ
  • Glosarium
  • Status

Legal

  • Ketentuan Layanan
  • Kebijakan Privasi
  • Kebijakan Pengembalian Dana
  • Jangan jual informasi pribadi saya
//Cara Menyelesaikan reCAPTCHA v2 dengan Puppeteer [Javascript] dengan Ekstensi CapSolver
Jul23, 2023

Cara Menyelesaikan reCAPTCHA v2 dengan Puppeteer [Javascript] dengan Ekstensi CapSolver

Adélia Cruz

Adélia Cruz

Neural Network Developer

Pendahuluan

Mengotomasi interaksi browser seringkali memerlukan penanganan tantangan CAPTCHA, terutama ketika bekerja dengan alat seperti Puppeteer. Dalam panduan ini, kita akan membahas bagaimana mengatur Puppeteer JS dengan ekstensi CapSolver untuk menyelesaikan reCAPTCHA v2 secara efisien. Meskipun tutorial ini fokus pada reCAPTCHA v2, pendekatan yang sama dapat diperluas untuk jenis CAPTCHA lain yang didukung oleh CapSolver.

Di akhir artikel ini, Anda akan memahami cara menginstal dependensi yang diperlukan, mengkonfigurasi ekstensi CapSolver, dan memicu penyelesaian CAPTCHA langsung dalam sesi browser yang dikontrol oleh Puppeteer.

1. Menginstal komponen puppeteer

⚠️ Dalam blog ini, kita akan menjelaskan cara mengatur Puppeteer JS dengan ekstensi CapSolver untuk menyelesaikan reCAPTCHA v2. Namun, pendekatan ini juga dapat diterapkan untuk jenis CAPTCHA lainnya.

Copy
npm i puppeteer puppeteer-extra puppeteer-extra-plugin-stealth

2. Mengatur ekstensi

Unduh arsip dengan ekstensi, dan ekstrak ke folder ./CapSolver.Browser.Extension di akar proyek.

Ekstensi memiliki banyak pengaturan, termasuk penyelesaian CAPTCHA otomatis, dukungan proxy, dan opsi kontrol yang lebih halus. Pengaturan ini tersedia dalam file ./assets/config.json.

Pengaturan tersebut adalah:

json Copy
{
    "apiKey": "YourApiKey",
    "useCapsolver": true,

    "useProxy": false,
    "proxyType": "http",
    "hostOrIp": "",
    "port": "",
    "proxyLogin": "",
    "proxyPassword": "",

    "enabledForBlacklistControl": false,
    "blackUrlList": [],

    "enabledForRecaptcha": true,
    "enabledForRecaptchaV3": true,
    "enabledForcaptcha": true,

    "reCaptchaMode": "token",
    "captchaMode": "click",

    "reCaptchaDelayTime": 0,
    "captchaDelayTime": 0,

    "reCaptchaRepeatTimes": 10,
    "reCaptcha3RepeatTimes": 10,
    "captchaRepeatTimes": 10
}

Masukkan kunci API Anda ke file pengaturan ekstensi ./assets/config.json. Kunci harus ditetapkan ke bidang apiKey. Anda dapat menyalin kunci API langsung dari dashboard CapSolver.

Contoh:

Copy
apiKey: "CAP-4FDBD3SDFSD-23S-2-3"

Dalam contoh ini, reCaptchaMode diatur ke token. Meskipun mode click juga tersedia, mode token biasanya direkomendasikan untuk reCAPTCHA.

3. Mengatur Puppeteer untuk menyelesaikan reCAPTCHA dengan Ekstensi CapSolver

Copy
const puppeteer = require('puppeteer-extra');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');
const { executablePath } = require('puppeteer'); 

(async () => {
  const pathToExtension = require('path').join(__dirname, 'CapSolver.Browser.Extension');
  puppeteer.use(StealthPlugin())
  const browser = await puppeteer.launch({
    headless: false,
    args: [
      `--disable-extensions-except=${pathToExtension}`,
      `--load-extension=${pathToExtension}`,
    ],
    executablePath: executablePath()
  });
  
  const [page] = await browser.pages()
})();

Berikutnya, buka halaman https://www.google.com/recaptcha/api2/demo dan kirim CAPTCHA ke CapSolver.

Menggunakan page.goto(), navigasi ke halaman target. CAPTCHA dapat dikirim untuk diselesaikan secara otomatis atau manual.
Dalam contoh ini, kita memicunya secara manual dengan menunggu kotak centang CAPTCHA dan mengkliknya.

js Copy
await page.goto('https://site.example') 

// Menunggu elemen dengan selector CSS "#recaptcha-anchor-label"
await page.waitForSelector('#recaptcha-anchor-label')
// Klik pada elemen
await page.click('#recaptcha-anchor-label')

Kode Lengkap

js Copy
const puppeteer = require('puppeteer-extra');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');
const { executablePath } = require('puppeteer'); 

(async () => {
  const pathToExtension = require('path').join(__dirname, 'CapSolver.Browser.Extension');
  puppeteer.use(StealthPlugin())
  const browser = await puppeteer.launch({
    headless: false,
    args: [
      `--disable-extensions-except=${pathToExtension}`,
      `--load-extension=${pathToExtension}`,
    ],
    executablePath: executablePath()
  });
  
  const [page] = await browser.pages()

  // Membuka halaman
  await page.goto('https://site.example') 

  // Menunggu elemen dengan selector CSS "#recaptcha-anchor-label"
  await page.waitForSelector('#recaptcha-anchor-label')
  // Klik pada elemen
  await page.click('#recaptcha-anchor-label')
})();

Kesimpulan

Anda telah berhasil menyelesaikan reCAPTCHA v2 menggunakan Puppeteer dan ekstensi CapSolver. Pengaturan ini memberikan cara yang fleksibel dan skalabel untuk menangani tantangan CAPTCHA langsung dalam lingkungan browser nyata. Dengan menyesuaikan konfigurasi ekstensi, alur kerja yang sama dapat digunakan kembali untuk jenis CAPTCHA lain yang didukung oleh CapSolver, membuatnya cocok untuk pengujian, otomatisasi, dan tugas berbasis browser skala besar.

Pertanyaan yang Sering Diajukan (FAQs)

1. Apakah metode ini dapat digunakan dalam mode headless?
Ekstensi browser CapSolver memerlukan lingkungan browser yang terlihat. Oleh karena itu, headless: false direkomendasikan saat menggunakan pendekatan berbasis ekstensi.

2. Apakah pengaturan ini berfungsi untuk jenis CAPTCHA selain reCAPTCHA v2?
Ya. Ekstensi CapSolver mendukung berbagai jenis CAPTCHA. Anda dapat mengaktifkan atau menonaktifkan solver CAPTCHA tertentu dalam file config.json dan menyesuaikan alur kerja sesuai kebutuhan.

3. Apakah proxy diperlukan saat menggunakan ekstensi CapSolver?
Proxy bersifat opsional. Ekstensi mendukung konfigurasi proxy, tetapi banyak penggunaan bekerja tanpa proxy. Penggunaan proxy bergantung pada situs web target dan kebutuhan otomatisasi Anda.

4. Apa perbedaan antara mode token dan click untuk reCAPTCHA?
Mode token mengambil solusi CAPTCHA secara programatis dan biasanya lebih stabil untuk otomatisasi. Mode click mensimulasikan interaksi pengguna dengan kotak centang CAPTCHA.

5. Apakah pengaturan ini dapat digunakan dalam lingkungan produksi?
Ya. Dengan konfigurasi yang tepat, penanganan kesalahan, dan pertimbangan skalabilitas, pendekatan ini dapat diintegrasikan ke dalam alur kerja otomatisasi browser tingkat produksi.

Lihat Lebih Banyak

reCAPTCHAApr 16, 2026

reCAPTCHA Kunci Situs atau Token Tidak Valid? Panduan Perbaikan dan Penyebab

Mengalami kesalahan "reCAPTCHA Kunci Situs Tidak Valid" atau "token reCAPTCHA tidak valid"? Temukan penyebab umum, perbaikan langkah demi langkah, dan tips pemecahan masalah untuk menyelesaikan masalah verifikasi reCAPTCHA gagal. Pelajari cara memperbaiki verifikasi reCAPTCHA gagal, silakan coba lagi.

Aloísio Vítor
Aloísio Vítor
reCAPTCHAMar 25, 2026

Cara Menyelesaikan reCAPTCHA v2 Python dan API

Pelajari cara menyelesaikan reCAPTCHA v2 dengan Python dan API. Panduan lengkap ini mencakup metode Proxy dan Proxyless dengan kode yang siap produksi untuk otomatisasi.

Daftar Isi

Aloísio Vítor
Aloísio Vítor
reCAPTCHAFeb 27, 2026

Cara Mengotomasi Penyelesaian reCAPTCHA untuk Platform Pembandingan Kecerdasan Buatan

Pelajari cara mengotomatisasi reCAPTCHA v2 dan v3 untuk pembandingan AI. Gunakan CapSolver untuk mempermudah pengumpulan data dan menjaga alur kerja AI berkinerja tinggi.

Sora Fujimoto
Sora Fujimoto
reCAPTCHAFeb 12, 2026

Cara Memperbaiki Masalah reCAPTCHA Umum dalam Pengambilan Data Web

Pelajari cara memperbaiki masalah reCAPTCHA umum dalam web scraping. Temukan solusi praktis untuk reCAPTCHA v2 dan v3 untuk mempertahankan alur kerja pengumpulan data yang mulus.

Lucas Mitchell
Lucas Mitchell
Blog
reCAPTCHA