
Aloísio Vítor
Image Processing Expert

Panduan ini menjelaskan cara menyelesaikan reCAPTCHA v2 menggunakan API CapSolver dengan Node.js. Panduan ini mencakup implementasi tanpa proxy dan berbasis proxy, instruksi langkah demi langkah untuk setup lingkungan, serta contoh kode Node.js yang siap pakai. Dengan mengikuti tutorial ini, pengembang dapat mengintegrasikan penanganan reCAPTCHA v2 ke dalam alur kerja otomatisasi atau pengumpulan data secara efisien dan andal.
reCAPTCHA v2 tetap salah satu mekanisme verifikasi manusia yang paling umum diterapkan di seluruh web. Bagi pengembang yang bekerja dengan alur kerja otomatis, ekstraksi data, atau otomatisasi browser skala besar, menangani reCAPTCHA v2 secara efisien adalah tantangan teknis yang sering muncul.
Dalam artikel ini, kami membimbing Anda melalui implementasi Node.js praktis untuk menyelesaikan reCAPTCHA v2 menggunakan API CapSolver. Anda akan belajar cara mengkonfigurasi lingkungan Anda, menginstal dependensi yang diperlukan, dan menerapkan solusi baik dengan maupun tanpa proxy. Contoh yang disertakan dirancang untuk produksi dan mudah disesuaikan dengan kasus penggunaan dunia nyata.
Jalankan perintah berikut untuk menginstal paket yang diperlukan:
npm install axios
Berikut adalah skrip contoh Node.JS untuk menyelesaikan tugas tersebut:
const axios = require('axios');
const PAGE_URL = ""; // Ganti dengan situs web Anda
const SITE_KEY = ""; // Ganti dengan situs web Anda
const CLIENT_KEY = ""; // Ganti dengan kunci API CAPSOLVER Anda
async function createTask(payload) {
try {
const res = await axios.post('https://api.capsolver.com/createTask', {
clientKey: CLIENT_KEY,
task: payload
});
return res.data;
} catch (error) {
console.error(error);
}
}
async function getTaskResult(taskId) {
try {
success = false;
while(success == false){
await sleep(1000);
console.log("Mengambil hasil tugas untuk ID tugas: " + taskId);
const res = await axios.post('https://api.capsolver.com/getTaskResult', {
clientKey: CLIENT_KEY,
taskId: taskId
});
if( res.data.status == "ready") {
success = true;
console.log(res.data)
return res.data;
}
}
} catch (error) {
console.error(error);
return null;
}
}
async function solveReCaptcha(pageURL, sitekey) {
const taskPayload = {
type: "ReCaptchaV2TaskProxyless",
websiteURL: pageURL,
websiteKey: sitekey,
};
const taskData = await createTask(taskPayload);
return await getTaskResult(taskData.taskId);
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function main() {
try {
const response = await solveReCaptcha(PAGE_URL, SITE_KEY );
console.log(`Token yang diterima: ${response.solution.gReCaptcharesponse}`);
}
catch (error) {
console.error(`Kesalahan: ${error}`);
}
}
main();
Berikut adalah skrip contoh Node.JS untuk menyelesaikan tugas tersebut:
const axios = require('axios');
const PAGE_URL = ""; // Ganti dengan situs web Anda
const SITE_KEY = ""; // Ganti dengan situs web Anda
const CLIENT_KEY = ""; // Ganti dengan kunci API CAPSOLVER Anda
const PROXY = "https://username:password@host:port";
async function createTask(payload) {
try {
const res = await axios.post('https://api.capsolver.com/createTask', {
clientKey: CLIENT_KEY,
task: payload
});
return res.data;
} catch (error) {
console.error(error);
}
}
async function getTaskResult(taskId) {
try {
success = false;
while(success == false){
await sleep(1000);
console.log("Mengambil hasil tugas untuk ID tugas: " + taskId);
const res = await axios.post('https://api.capsolver.com/getTaskResult', {
clientKey: CLIENT_KEY,
taskId: taskId
});
if( res.data.status == "ready") {
success = true;
console.log(res.data)
return res.data;
}
}
} catch (error) {
console.error(error);
return null;
}
}
async function solveReCaptcha(pageURL, sitekey) {
const taskPayload = {
type: "ReCaptchaV2Task",
websiteURL: pageURL,
websiteKey: sitekey,
proxy: PROXY
};
const taskData = await createTask(taskPayload);
return await getTaskResult(taskData.taskId);
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function main() {
try {
const response = await solveReCaptcha(PAGE_URL, SITE_KEY );
console.log(`Token yang diterima: ${response.solution.gRecaptchaResponse}`);
}
catch (error) {
console.error(`Kesalahan: ${error}`);
}
}
main();
Menyelesaikan reCAPTCHA v2 dalam Node.js tidak perlu rumit. Dengan memanfaatkan API CapSolver, pengembang dapat menerapkan solusi yang bersih dan skalabel yang berjalan secara andal di berbagai konfigurasi situs web. Baik Anda memilih setup tanpa proxy untuk kesederhanaan atau pendekatan berbasis proxy untuk kontrol yang lebih besar, contoh dalam panduan ini memberikan dasar yang kuat untuk penggunaan produksi.
Tugas tanpa proxy mengandalkan infrastruktur internal CapSolver dan lebih mudah diimplementasikan, sedangkan tugas berbasis proxy memungkinkan Anda mengontrol reputasi IP dan lokasi geografis untuk tingkat keberhasilan yang lebih tinggi di situs web yang lebih ketat.
Gunakan ReCaptchaV2Task ketika situs target mewajibkan konsistensi IP atau menerapkan pembatasan regional yang memerlukan konfigurasi proxy tertentu.
Sebagian besar tugas diselesaikan dalam beberapa detik. Waktu aktual tergantung pada kompleksitas situs, tingkat kesulitan tantangan, dan apakah proxy digunakan.
Ya. Fungsi yang disediakan bersifat modular dan dapat dimasukkan ke dalam crawler, pipeline otomatisasi, atau alur kerja berbasis browser.
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.

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