Callback ile reCAPTCHA v2 Nasıl Çözülür
Yukarıdaki kutu bir reCAPTCHA v2 çözüldüğü anda ayrı bir düğme olmadan bir JavaScript callback'ini tetikleyen onay kutusu. Bu sayfa, onu çözmenin ve geçerli bir token almanın üç kolay yolunu gösterir g-recaptcha-response token: CapSkip tarayıcı uzantısıyla otomatik olarak, CapSkip SDK'sı ile kendi kodunuzda ya da araçlarınızın halihazırda çağırdığı captcha hizmetini CapSkip'e yönlendirerek. CapSkip cihazınızda yerel olarak çalışır, dolayısıyla çözüm başına ücret yoktur ve hiçbir şey makinenizden çıkmaz.
Seçenek 1: Tarayıcı uzantısıyla çözün
reCAPTCHA v2'yi atlatmanın en basit yolu şudur: CapSkip captcha çözücü uzantısı Chrome ve Firefox için. Onay kutusunu işaretler, herhangi bir görüntü doğrulamasını geçer ve widget'ın callback'inin arka planda otomatik olarak tetiklenmesini sağlar, hiç kod yazmaya gerek kalmadan.
Uzantıyı yükleyin
CapSkip'i Chrome Web Store veya Firefox Add-ons'tan ekleyin. Ayrıca Brave, Edge, Opera ve Vivaldi'de de çalışır.
CapSkip uygulamasını çalıştırın
CapSkip masaüstü uygulamasını kurun ve açın. Çözümü kendi cihazınızda yapar ve uzantıyla eşleşir.
Otomatik olarak çözer
Bu sayfayı yeniden yükleyin; CapSkip reCAPTCHA'yı temizler, böylece callback kendiliğinden tetiklenir. Kontrolü elinizde tutmayı mı tercih edersiniz? İstediğiniz zaman manuel moda geçin.
Seçenek 2: Onu CapSkip SDK'sıyla çözün
Otomasyon, kazıyıcı veya bot mu geliştiriyorsunuz? Şunu kullanın: CapSkip captcha çözme SDK'sı reCAPTCHA v2'yi şuradan çözmek için: Python, Node.js, PHP veya C#. Bu sayfanın site key'ini ve URL'sini geçirirsiniz ve CapSkip yeni bir g-recaptcha-response token'ı döndürür. Bu widget bir callback kullandığı için, ardından o callback'i token ile tarayıcıda çalıştırırsınız.
6LfdaCstAAAAABOuJHFLrT3p9OB7_jpn9LhdFeqV
https://capskip.com/tr/captcha-demo/recaptcha-v2-callback/
Başlamadan önce
CapSkip yerel olarak çözer. İndirin ve şunu çalıştırın: CapSkip masaüstü uygulaması ve arka planda açık tutun. SDK onunla şu üzerinden iletişim kurar 127.0.0.1:8080, bu yüzden hiçbir bulut çağrısı ve çözüm başına ücret yoktur.
SDK'yı yükleyin
Resmi CapSkip istemcisini projenize ekleyin.
pip install capskipnpm install capskipcomposer require capskip/capskipdotnet add package CapSkipreCAPTCHA v2 çözün ve bir token alın
Bu sayfanın şeyini geçirin: sitekey ve url şuraya recaptcha(). CapSkip onay kutusunu işaretler, varsa herhangi bir görsel challenge'ı temizler ve yeni bir g-recaptcha-response token.
from capskip import CapSkip
# Connect to the CapSkip app running on your machine
solver = CapSkip(host="127.0.0.1", port=8080)
# Solve the reCAPTCHA v2 on this page
result = solver.recaptcha(
sitekey="6LfdaCstAAAAABOuJHFLrT3p9OB7_jpn9LhdFeqV",
url="https://capskip.com/tr/captcha-demo/recaptcha-v2-callback/",
)
token = result["code"] # the g-recaptcha-response token
print(token)const { CapSkip } = require('capskip');
// Connect to the CapSkip app running on your machine
const solver = new CapSkip({ host: '127.0.0.1', port: 8080 });
(async () => {
// Solve the reCAPTCHA v2 on this page
const result = await solver.recaptcha(
'6LfdaCstAAAAABOuJHFLrT3p9OB7_jpn9LhdFeqV',
'https://capskip.com/tr/captcha-demo/recaptcha-v2-callback/',
);
const token = result.code; // the g-recaptcha-response token
console.log(token);
})();<?php
require 'vendor/autoload.php';
use CapSkip\CapSkip;
// Connect to the CapSkip app running on your machine
$solver = new CapSkip(['host' => '127.0.0.1', 'port' => 8080]);
// Solve the reCAPTCHA v2 on this page
$result = $solver->recaptcha(
'6LfdaCstAAAAABOuJHFLrT3p9OB7_jpn9LhdFeqV',
'https://capskip.com/tr/captcha-demo/recaptcha-v2-callback/'
);
$token = $result['code']; // the g-recaptcha-response token
echo $token;using CapSkip;
// Connect to the CapSkip app running on your machine
var solver = new CapSkipClient(host: "127.0.0.1", port: 8080);
// Solve the reCAPTCHA v2 on this page
var result = await solver.RecaptchaAsync(
"6LfdaCstAAAAABOuJHFLrT3p9OB7_jpn9LhdFeqV",
"https://capskip.com/tr/captcha-demo/recaptcha-v2-callback/");
string token = result.Code; // the g-recaptcha-response token
Console.WriteLine(token);Uzun bir g-recaptcha-response token, callback'e verilmeye hazır.
Token'ı kullanın: callback'i çalıştırın
Token'ı gizli g-recaptcha-response alanına, ardından widget'ın callback'ini token ile çalıştırın. reCAPTCHA, çözüldüğünde bu callback'i tetikler ve sonrasında olan her şeyi (form gönderimi, doğrulama, sayfanın kilidini açma) yönlendirir. Sunucunuz token'ı yine de Google siteverify ile doğrular.
// 1. Drop the solved token into the reCAPTCHA response field
document.querySelector('[name="g-recaptcha-response"]').value = token;
// 2. Run the widget's callback with the token. Read the name from the
// widget's data-callback attribute - on this page it is
// "capskipV2CallbackToken" - and call that global function:
const cb = document.querySelector('.g-recaptcha').dataset.callback;
if (window[cb]) window[cb](token);CapSkip'i diğer reCAPTCHA v2 callback sitelerinde kullanma
Bu widget'lar, reCAPTCHA çözüldüğü anda bir callback fonksiyonu çalıştırır. Herhangi bir sitede akışı tamamlamak için üç şeye ihtiyacınız vardır:
- Site key: the
data-sitekeywidget üzerindeki öznitelik veya şu:kreCAPTCHA iframe URL'sinin parametresi (google.com/recaptcha/api2/anchor). - Callback: şunu arayın: bir
data-callbackwidget üzerindeki öznitelik (fonksiyonu geneldir, bu yüzden çağırın:window.callbackName(token)), thecallbackşuraya aktarılan:grecaptcha.render(), veya konsolda yapılandırmayı şurada okuyun:___grecaptcha_cfg.clients[0]. - Sayfa URL'si: sayfanın tam adresi.
Enterprise varyantı
Site Enterprise sürümünü kullanıyorsa, şunu ekleyin: enterprise bayrağı:
result = solver.recaptcha(
sitekey="SITEKEY_FROM_PAGE",
url="https://example.com/",
enterprise=1, # Enterprise reCAPTCHA v2
)
token = result["code"] # the g-recaptcha-response tokenconst result = await solver.recaptcha(
'SITEKEY_FROM_PAGE',
'https://example.com/',
{ enterprise: 1 }, // Enterprise reCAPTCHA v2
);
const token = result.code; // the g-recaptcha-response token$result = $solver->recaptcha(
'SITEKEY_FROM_PAGE',
'https://example.com/',
['enterprise' => 1] // Enterprise reCAPTCHA v2
);
$token = $result['code']; // the g-recaptcha-response tokenvar result = await solver.RecaptchaAsync(
"SITEKEY_FROM_PAGE",
"https://example.com/",
new Dictionary<string, object?> { ["enterprise"] = 1 }); // Enterprise reCAPTCHA v2
string token = result.Code; // the g-recaptcha-response tokenA proxy da desteklenir; bu, site token'ı IP'nize bağladığında yardımcı olur.
Python, Node.js, PHP veya C# kullanmıyor musunuz? SDK'lar yalnızca CapSkip HTTP API'sinin sarmalayıcılarıdır (standart in.php / res.php uç noktaları), böylece reCAPTCHA v2'yi şuradan çözebilirsiniz: herhangi bir dil, çerçeve veya araç. Bkz. reCAPTCHA v2 Callback API referansı.
Seçenek 3: Mevcut çözücü servis kodunuzu CapSkip'e gönderin
Zaten callback tabanlı reCAPTCHA v2'yi şunun gibi captcha başına ödeme yapılan bir servis aracılığıyla mı çözüyorsunuz: 2Captcha, Anti-Captcha veya CapMonster? Tek bir satırı bile yeniden yazmanıza gerek yok. CapSkip uygulaması bir servis emülatörü o servislerin kendi API'lerini yerel olarak konuşur: kullandığınız servisi seçin, tıklayın hosts dosyasına ekleyin, ve bot'unuzun, kazıyıcınızın veya hazır aracınızın ona zaten gönderdiği her istek, çözüm başına fatura yerine sabit bir fiyata, kendi makinenizde CapSkip tarafından yanıtlanır.
Servisinizi seçin
CapSkip uygulamasını açın ve kodunuzun zaten iletişim kurduğu servisi seçin: 2Captcha, RuCaptcha, Anti-Captcha, CapMonster Cloud, CapSolver, DeathByCaptcha, SolveCaptcha veya Captchas.io.
hosts dosyasına ekleyin
Uygulamadaki tek bir tıklama, o servisin alan adını CapSkip'e yönlendirir; böylece aracınızın yaptığı çağrılar, ücretli bir API'ye gitmek yerine kendi makinenizde yanıtlanır.
Aracınızı değiştirmeden çalıştırın
Aynı API anahtarı, aynı istek, aynı yoklama (polling) döngüsü. CapSkip, o hizmetin' kendi formatında yanıt verir ve kodunuz geçerli bir g-recaptcha-response token'ı geri alır.
Geçiş yaptığınızda aşağıdaki hiçbir şey değişmez. Bu, kodunuzun bugün yaptığı çağrının aynısıdır; tek fark, callback tabanlı reCAPTCHA v2'nin artık yerel olarak çözülmesi ve CapSkip'ten geçerli bir g-recaptcha-response token'ının geri gelmesidir:
POST https://2captcha.com/in.php
key=YOUR_EXISTING_API_KEY
method=userrecaptcha
googlekey=6LfdaCstAAAAABOuJHFLrT3p9OB7_jpn9LhdFeqV
pageurl=https://capskip.com/tr/captcha-demo/recaptcha-v2-callback/
GET https://2captcha.com/res.php?key=YOUR_EXISTING_API_KEY&action=get&id=2122988149
OK|03AGdBq26… the token to hand to the widget's callbackİstemci kütüphaneleri aynı şekilde çalışır: Anti-Captcha tarzı bir createTask / getTaskResult çifti veya bu servislerden biri üzerine kurulmuş herhangi bir sarmalayıcı, emülatör açıldığında çalışmaya devam eder. Tam istek ve yanıt referansı şurada bulunur: CapSkip API belgeleri.
Callback tabanlı reCAPTCHA v2 çözme hakkında daha fazlası
İnsanların bu demoyla genellikle birlikte kullandığı araçlar ve diller için kılavuzlar.
Bu reCAPTCHA v2 callback demosu hakkında
Bu sayfa canlı bir reCAPTCHA v2 callback demosu callback tabanlı reCAPTCHA'nın nasıl çalıştığını test edebileceğiniz ve gerçek zamanlı olarak çözüldüğünü izleyebileceğiniz yer. Ayrı bir gönder butonu yerine, bu reCAPTCHA v2 widget'ı bir JavaScript çalıştırır data-callback onay kutusu çözüldüğü an fonksiyon, ona şunu aktararak: g-recaptcha-response token, böylece sayfa hemen ona göre işlem yapabilir.
Geliştiriciler, test uzmanları ve otomasyon mühendisleri, olay tabanlı captcha işleme, token yakalama ve istemci tarafı entegrasyonunu keşfetmek için bu reCAPTCHA v2 callback test sayfasını kullanabilir. reCAPTCHA v2'yi bir kez çözmeniz ya da binlerce çözümü otomatikleştirmeniz gerekiyorsa, CapSkip bir reCAPTCHA v2 çözücü üç şekilde çalışır: kod gerektirmeyen (no-code) captcha çözücü uzantısı Chrome ve Firefox için ve captcha çözme SDK'sı Python, Node.js, PHP ve C# için ve bugün çözüm başına ödüyor olabileceğiniz captcha servislerinin doğrudan emülasyonu; hepsi tek bir sabit fiyatta sınırsız çözümle. Üçü de aynı masaüstü yapay zekâ tarafından yönlendirilir captcha çözücü, bir kez kurulur ve kendi makinenizde çalışır, dolayısıyla uzak bir sunucuda hiçbir şey kuyruğa alınmaz ve çözüm başına hiçbir şey faturalandırılmaz.
