Cara Memecahkan hCaptcha
Kotak di atas adalah versi langsung dari hCaptcha checkbox. Halaman ini menunjukkan dua cara untuk memecahkan hCaptcha dan mendapatkan token h-captcha-response yang valid: dengan memanggil HTTP API CapSkip dari kode Anda sendiri, atau dengan merutekan layanan captcha yang sudah dipanggil alat Anda ke CapSkip. CapSkip adalah pemecah hCaptcha tanpa batas yang berjalan secara lokal di perangkat Anda, jadi tidak ada biaya per pemecahan dan tidak ada yang keluar dari komputer Anda.
Opsi 1: Pecahkan hCaptcha dengan HTTP API CapSkip
Membangun otomatisasi, scraper atau bot? Kirim site key dan URL halaman ini ke aplikasi CapSkip dengan satu permintaan, lakukan polling untuk hasilnya, dan CapSkip mengembalikan token hCaptcha baru yang dapat Anda kirim seperti token asli. API ini menggunakan endpoint standar in.php / res.php , sehingga dapat digunakan dari Python, Node.js, PHP, C# atau bahasa lain apa pun yang dapat melakukan panggilan HTTP.
10000000-ffff-ffff-ffff-000000000001
https://capskip.com/id/captcha-demo/hcaptcha/
Sebelum Anda mulai
CapSkip memecahkan secara lokal. Unduh dan jalankan aplikasi desktop CapSkip dan biarkan tetap terbuka di latar belakang. Kode Anda berkomunikasi dengannya di 127.0.0.1:8080, sehingga tidak ada panggilan cloud dan tidak ada biaya per pemecahan.
Kirim hCaptcha ke CapSkip
Kirim nilai halaman ini, yaitu sitekey dan pageurl ke in.php dengan method=hcaptcha. CapSkip langsung menjawab dengan ID tugas.
import time
import requests
API = "http://127.0.0.1:8080" # the CapSkip app on your machine
KEY = "YOUR_API_KEY"
# 1. Submit the hCaptcha shown on this page
task = requests.post(f"{API}/in.php", data={
"key": KEY,
"method": "hcaptcha",
"sitekey": "10000000-ffff-ffff-ffff-000000000001",
"pageurl": "https://capskip.com/id/captcha-demo/hcaptcha/",
"json": 1,
}).json()["request"]
# 2. Poll until the token is ready
while True:
time.sleep(5)
res = requests.get(f"{API}/res.php", params={
"key": KEY, "action": "get", "id": task, "json": 1,
}).json()
if res["request"] != "CAPCHA_NOT_READY":
break
token = res["request"] # the h-captcha-response token
print(token)const API = 'http://127.0.0.1:8080'; // the CapSkip app on your machine
const KEY = 'YOUR_API_KEY';
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
(async () => {
// 1. Submit the hCaptcha shown on this page
const submit = await fetch(`${API}/in.php`, {
method: 'POST',
body: new URLSearchParams({
key: KEY,
method: 'hcaptcha',
sitekey: '10000000-ffff-ffff-ffff-000000000001',
pageurl: 'https://capskip.com/id/captcha-demo/hcaptcha/',
json: '1',
}),
}).then((r) => r.json());
// 2. Poll until the token is ready
let res;
do {
await sleep(5000);
res = await fetch(`${API}/res.php?key=${KEY}&action=get&id=${submit.request}&json=1`)
.then((r) => r.json());
} while (res.request === 'CAPCHA_NOT_READY');
const token = res.request; // the h-captcha-response token
console.log(token);
})();<?php
$api = 'http://127.0.0.1:8080'; // the CapSkip app on your machine
$key = 'YOUR_API_KEY';
// 1. Submit the hCaptcha shown on this page
$ch = curl_init("$api/in.php");
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => http_build_query([
'key' => $key,
'method' => 'hcaptcha',
'sitekey' => '10000000-ffff-ffff-ffff-000000000001',
'pageurl' => 'https://capskip.com/id/captcha-demo/hcaptcha/',
'json' => 1,
]),
]);
$task = json_decode(curl_exec($ch), true)['request'];
// 2. Poll until the token is ready
do {
sleep(5);
$res = json_decode(file_get_contents(
"$api/res.php?key=$key&action=get&id=$task&json=1"
), true);
} while ($res['request'] === 'CAPCHA_NOT_READY');
$token = $res['request']; // the h-captcha-response token
echo $token;using System.Text.Json;
const string Api = "http://127.0.0.1:8080"; // the CapSkip app on your machine
const string Key = "YOUR_API_KEY";
var http = new HttpClient();
// 1. Submit the hCaptcha shown on this page
var submit = await http.PostAsync($"{Api}/in.php", new FormUrlEncodedContent(new Dictionary<string, string>
{
["key"] = Key,
["method"] = "hcaptcha",
["sitekey"] = "10000000-ffff-ffff-ffff-000000000001",
["pageurl"] = "https://capskip.com/id/captcha-demo/hcaptcha/",
["json"] = "1",
}));
string task = JsonDocument.Parse(await submit.Content.ReadAsStringAsync())
.RootElement.GetProperty("request").GetString()!;
// 2. Poll until the token is ready
string token;
do
{
await Task.Delay(5000);
var res = JsonDocument.Parse(await http.GetStringAsync(
$"{Api}/res.php?key={Key}&action=get&id={task}&json=1"));
token = res.RootElement.GetProperty("request").GetString()!;
} while (token == "CAPCHA_NOT_READY");
Console.WriteLine(token); // the h-captcha-response tokenAnda mendapatkan token panjang, biasanya diawali dengan P1_, yang valid untuk site key ini dan siap dikirim. Respons yang sama juga membawa respKey dan useragent dari browser yang memecahkannya.
Gunakan token
Masukkan token ke kolom tersembunyi milik widget h-captcha-response textarea. hCaptcha juga mengisi textarea g-recaptcha-response untuk situs yang membacanya, jadi isi keduanya. Jika widget di-render dengan data-callback, jalankan fungsi tersebut dengan token. Lalu kirim formulirnya, dan server Anda memverifikasinya dengan hCaptcha siteverify. Perhatikan bahwa demo ini memverifikasi melalui callback milik widget itu sendiri, sehingga yang diperiksa adalah token yang dihasilkan widget, bukan token yang Anda masukkan ke kolom.
// 1. Drop the solved token into both response fields
document.querySelector('[name="h-captcha-response"]').value = token;
document.querySelector('[name="g-recaptcha-response"]').value = token;
// 2. If the widget has a data-callback, run it with the token
const cb = document.querySelector('.h-captcha')?.dataset.callback;
if (cb && window[cb]) window[cb](token);
// 3. ...then submit your form.hCaptcha Tak Terlihat dan hCaptcha Enterprise
Widget tak terlihat tidak memiliki checkbox dan baru terbuka ketika situs memanggil hcaptcha.execute(); tambahkan invisible=1 ke permintaan. Situs Enterprise sering meneruskan nilai rqdata ke widget; kirimkan sebagai data. Ketika situs memeriksa browser, kirim token dengan nilai yang sama persis seperti useragent yang dikembalikan CapSkip.
POST http://127.0.0.1:8080/in.php
key=YOUR_API_KEY
method=hcaptcha
sitekey=SITEKEY_FROM_THE_PAGE
pageurl=https://the-protected-site.com/login
invisible=1
data=RQDATA_FROM_THE_PAGE
json=1
GET http://127.0.0.1:8080/res.php?key=YOUR_API_KEY&action=get&id=2122988149&json=1
{"status":1,"request":"P1_eyJ0eXAiOiJKV1Qi…","respKey":"E0_eyJ0eXAi…","useragent":"Mozilla/5.0 …"}API ini juga menerima proxy dan proxytype, yang membantu ketika situs memeriksa bahwa token dihasilkan dari IP Anda sendiri. Klien bergaya Anti-Captcha dapat mengirim pekerjaan yang sama sebagai createTask dengan tipe HCaptchaTaskProxyless, HCaptchaTask atau HCaptchaEnterpriseTask.
Daftar lengkap parameter permintaan, field respons, dan kode error tersedia di Dokumentasi API CapSkip.
Opsi 2: Kirim kode layanan solver Anda yang sudah ada ke CapSkip
Sudah memecahkan hCaptcha melalui layanan bayar per captcha seperti 2Captcha, Anti-Captcha atau CapSolver? Anda tidak perlu menulis ulang satu baris pun. Aplikasi CapSkip menyertakan emulator layanan yang berbicara dengan API milik layanan-layanan itu secara lokal: pilih layanan yang Anda pakai, klik Tambahkan ke file hosts, dan setiap permintaan yang sudah dikirim bot, scraper atau alat siap pakai Anda ke sana dijawab oleh CapSkip di komputer Anda sendiri, dengan harga tetap alih-alih tagihan per pemecahan.
Pilih layanan Anda
Buka aplikasi CapSkip dan pilih layanan yang sudah digunakan oleh kode Anda: 2Captcha, RuCaptcha, Anti-Captcha, CapMonster Cloud, CapSolver, DeathByCaptcha, SolveCaptcha, NextCaptcha, EzCaptcha atau Captchas.io.
Tambahkan ke file hosts
Satu klik di aplikasi mengarahkan domain layanan tersebut ke CapSkip, sehingga panggilan yang dibuat alat Anda dijawab di komputer Anda sendiri alih-alih keluar ke API berbayar.
Jalankan alat Anda tanpa perubahan
API key yang sama, permintaan yang sama, loop polling yang sama. CapSkip membalas dalam format milik layanan tersebut dan kode Anda mendapatkan token h-captcha-response yang valid.
Tidak ada yang berubah di bawah ini saat Anda beralih. Ini adalah panggilan yang sama seperti yang dilakukan kode Anda hari ini, hanya saja hCaptcha kini dipecahkan secara lokal dan token h-captcha-response yang valid dikembalikan oleh CapSkip:
POST https://2captcha.com/in.php
key=YOUR_EXISTING_API_KEY
method=hcaptcha
sitekey=10000000-ffff-ffff-ffff-000000000001
pageurl=https://capskip.com/id/captcha-demo/hcaptcha/
GET https://2captcha.com/res.php?key=YOUR_EXISTING_API_KEY&action=get&id=2122988149
OK|P1_eyJ0eXAi… the h-captcha-response token, solved by CapSkipPustaka klien bekerja dengan cara yang sama: sebuah objek bergaya Anti-Captcha createTask / getTaskResult pasangan, atau wrapper apa pun yang dibangun di atas salah satu layanan ini, tetap bekerja begitu emulator diaktifkan. Referensi lengkap permintaan dan respons ada di Dokumentasi API CapSkip.
Selengkapnya tentang pemecahan hCaptcha
Panduan untuk perkakas dan bahasa yang biasanya dipadukan orang dengan demo ini.
Tentang demo hCaptcha ini
Halaman ini adalah versi langsung dari Demo hCaptcha tempat Anda dapat menguji cara kerja hCaptcha dan menyaksikannya dipecahkan secara real time. hCaptcha adalah CAPTCHA yang berfokus pada privasi dan digunakan banyak situs sebagai pengganti reCAPTCHA: ia menampilkan checkbox "Saya adalah manusia" dan, ketika tidak yakin dengan seorang pengunjung, tantangan gambar seperti memilih gambar yang cocok dalam sebuah grid. Gunakan untuk menjelajahi pembuatan token hCaptcha, nilai h-captcha-response , dan alur verifikasi yang diandalkan situs web untuk melindungi formulir, login dan pendaftaran dari spam, penyalahgunaan dan bot.
Pengembang, penguji, dan insinyur otomatisasi dapat menggunakan halaman uji hCaptcha ini untuk memeriksa integrasi, memvalidasi penyiapan, dan mengukur seberapa cepat CapSkip memecahkan hCaptcha. Baik Anda perlu memecahkan hCaptcha sekali maupun mengotomatiskan ribuan pemecahan, CapSkip bekerja dengan dua cara: HTTP API sederhana yang dapat Anda panggil dari bahasa apa pun, dan emulasi siap pakai untuk layanan captcha yang mungkin Anda bayar per pemecahan saat ini, keduanya dengan pemecahan tanpa batas pada satu harga tetap. Keduanya digerakkan oleh AI desktop yang sama, yaitu pemecah captcha, diinstal sekali dan berjalan di komputer Anda sendiri, sehingga tidak ada yang diantre di server jarak jauh dan tidak ada yang ditagih per pemecahan.
