reCAPTCHA V2 Enterprise
reCAPTCHA V2 Enterprise — версия «Я не робот» с усиленной риск-аналитикой и ML-моделями корпоративного уровня. В отличие от обычной V2, требует передавать флаг enterprise=1, а решение обязательно нужно применять вместе с User-Agent решателя.
Обзор
- Часто содержит параметр
sa(action) в anchor-запросе - Требует User-Agent решателя при отправке токена — иначе валидация не пройдёт
- Резидентный прокси рекомендуется, если
saнедоступен
Формат запроса
/in.phpkeystringобязателенВаш API-ключ (32 символа)
methodstringобязателенЗначение: userrecaptcha
googlekeystringобязателенSitekey из anchor-запроса (параметр k)
pageurlstringобязателенПолный URL-адрес, на котором отображается reCAPTCHA
enterpriseintegerобязателенОбязательно 1
actionstringопциональноЗначение параметра sa из anchor-запроса, если присутствует
invisibleinteger (0/1)по умолчанию: 0опционально1, если reCAPTCHA невидима
proxystringопциональноРекомендован, если sa недоступен. Формат: login:password@123.123.123.123:3128
proxytypestringопциональноТип прокси: HTTP, HTTPS, SOCKS4, SOCKS5
cookiesstringопциональноФормат: KEY1:Value1;KEY2:Value2;
userAgentstringопциональноUser-Agent, передаваемый в браузер решателя
jsoninteger (0/1)по умолчанию: 0опциональноИспользуйте 1 — иначе не получите user_agent в ответе
Как решать капчу
Шаг 1. Найдите sitekey и action
Найдите в HTML-исходнике anchor-запрос вида www.google.com/recaptcha/enterprise/anchor. Извлеките параметр k (sitekey) и, если есть, параметр sa (action).
Шаг 2. Отправьте задачу нам
curl -G "https://captcha-api.iwhat.pw/in.php" \
-d key=YOUR_API_KEY \
-d method=userrecaptcha \
-d googlekey=6LbK4RweAAAAAP3sYqXm7VtNcZo1DwJgHf9RlUpB \
-d pageurl=https://example.com/page \
-d enterprise=1 \
-d json=1import requests
params = {
'key': 'YOUR_API_KEY',
'method': 'userrecaptcha',
'googlekey': '6LbK4RweAAAAAP3sYqXm7VtNcZo1DwJgHf9RlUpB',
'pageurl': 'https://example.com/page',
'enterprise': '1',
'json': '1'
}
response = requests.get('https://captcha-api.iwhat.pw/in.php', params=params)
result = response.json()
task_id = result['request']
print(f"ID задачи: {task_id}")const params = new URLSearchParams({
key: 'YOUR_API_KEY',
method: 'userrecaptcha',
googlekey: '6LbK4RweAAAAAP3sYqXm7VtNcZo1DwJgHf9RlUpB',
pageurl: 'https://example.com/page',
enterprise: '1',
json: '1',
});
const res = await fetch(`https://captcha-api.iwhat.pw/in.php?${params}`);
const { request: taskId } = await res.json();
console.log(`ID задачи: ${taskId}`);Шаг 3. Получение решения
import time
time.sleep(20)
result = requests.get('https://captcha-api.iwhat.pw/res.php', params={
'key': 'YOUR_API_KEY',
'action': 'get',
'id': task_id,
'json': '1',
}).json()
if result['status'] == 1:
token = result['result']
user_agent = result['user_agent']
print(f"Токен: {token}")
print(f"User-Agent: {user_agent}")Шаг 4. Вставьте токен
driver.execute_script(f'document.getElementById("g-recaptcha-response").innerHTML = "{token}";')
driver.find_element_by_id('protected-form').submit()Формат ответа
JSON-ответ (при json=1):
{
"status": 1,
"result": "0hYpNmTz8QvXwLc3RfKdB9saJoU1eGnP6DkVqM2i...",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)..."
}Распространённые ошибки
| Код | Описание |
|---|---|
ERROR_WRONG_USER_KEY | Неверный формат API-ключа |
ERROR_KEY_DOES_NOT_EXIST | Такого API-ключа не существует |
ERROR_ZERO_BALANCE | Недостаточно средств на балансе |
ERROR_PAGEURL | Отсутствует параметр pageurl |
ERROR_WRONG_GOOGLEKEY | sitekey пустой или в неверном формате |
CAPCHA_NOT_READY | Решение ещё не готово, подождите 5 сек |
Советы и рекомендации
- Всегда используйте тот же User-Agent, что вернулся в
user_agent— несовпадение приводит к провалу валидации - Всегда запрашивайте
json=1— иначе не получитеuser_agent - Если
saнедоступен, используйте резидентный прокси для повышения точности