reCAPTCHA V2 Callback
Некоторые сайты используют reCAPTCHA V2 с callback-функцией вместо скрытого поля g-recaptcha-response. В этом случае решённый токен нужно передать напрямую в callback сайта, а не вставлять в DOM.
Запрос на решение не отличается от обычной reCAPTCHA V2 — этот гайд описывает только отличие в применении токена.
Как определить callback-реализацию
- В HTML-разметке div капчи есть атрибут
data-callback="myFunction" - В вызове
grecaptcha.render()присутствует свойствоcallback - В консоли браузера имя функции можно найти через
___grecaptcha_cfg.clients[0].aa.l.callback
Не используйте g-recaptcha-response
При callback-реализации вставка токена в скрытое поле g-recaptcha-response может игнорироваться сайтом или приводить к ошибке.
Как решать капчу
Шаг 1. Извлеките sitekey и pageurl
Так же, как для обычной reCAPTCHA V2.
Шаг 2. Отправьте задачу нам
Параметры запроса идентичны обычной reCAPTCHA V2 — method=userrecaptcha, googlekey, pageurl. См. таблицу параметров.
Шаг 3. Получение решения
Дождитесь 15–20 секунд и опросите /res.php, как в стандартном гайде.
Шаг 4. Вызовите callback напрямую
js
// В контексте страницы (например, через driver.execute_script)
window.myFunction("TOKEN_FROM_RESPONSE");python
driver.execute_script(f'myFunction("{token}");')Советы и рекомендации
- Проверяйте реальное имя callback-функции в живом контексте страницы — после минификации оно может отличаться от исходного
- На страницах с несколькими капчами убедитесь, что вызываете callback нужного экземпляра (
clients[0],clients[1], ...) - Передавайте реалистичные
userAgent,cookiesиproxy— это снижает риск повторной проверки после callback