NeuroCaptcha

Примеры кода

Готовые клиенты на Python, Node.js, TypeScript, Go, PHP, C#, Java и cURL: создать задачу, дождаться результата, обработать ошибки.

На этой странице

Каждый пример создаёт задачу reCAPTCHA v2, опрашивает её раз в 2 секунды и печатает токен. Запускайте с test-ключом: это бесплатно, а ответ приходит за пару секунд.

Shell
export API_KEY=0123456789abcdef0123456789abcdef  # ваш ключ

Полные примеры#

import os
import time

import requests

API = "https://neurocaptcha.com"
KEY = os.environ["API_KEY"]


def call(method, payload):
    data = requests.post(f"{API}/{method}", json={"clientKey": KEY, **payload}, timeout=30).json()
    if data.get("errorId"):
        raise RuntimeError(f'{data["errorCode"]}: {data.get("errorDescription", "")}')
    return data


task = {
    "type": "RecaptchaV2TaskProxyless",
    "websiteURL": "https://www.google.com/recaptcha/api2/demo",
    "websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
}

# 1. create the task: its price is held, not charged
task_id = call("createTask", {"task": task})["taskId"]

# 2. poll every 2 s; a failed task raises with its error code and costs nothing
deadline = time.time() + 300
while time.time() < deadline:
    time.sleep(2)
    result = call("getTaskResult", {"taskId": task_id})
    if result["status"] == "ready":
        print(result["solution"]["gRecaptchaResponse"])
        break
else:
    raise TimeoutError("the task was not solved in time")

Что нужно#

ЯзыкТребования
PythonPython 3.8+, pip install requests
Node.jsNode.js 18+ (встроенный fetch); сохраните как .mjs
TypeScriptNode.js 23.6+ запускает .mts напрямую; или tsx, Deno, Bun
GoGo 1.21+, только стандартная библиотека (пример вебхука — 1.22+)
PHPPHP 7.4+ с расширением curl
C#.NET 6+
JavaJava 11+ и Jackson (com.fasterxml.jackson.core:jackson-databind)
cURLлюбая версия; показано двумя отдельными запросами

Другие типы задач#

Меняется только объект task. Например, reCAPTCHA v3 — параметры каждого типа в разделе Типы задач:

task
{
  "type": "RecaptchaV3TaskProxyless",
  "websiteURL": "https://example.com/login",
  "websiteKey": "YOUR_SITE_KEY",
  "pageAction": "login",
  "minScore": 0.7
}

Отдельные запросы#

На странице каждого метода есть готовый запрос на всех языках: createTask, getTaskResult, getBalance, getQueueStats, getSpendingStats, getTaskTypes, отчёты.

Как использовать токен#

Подставьте токен туда, где его ждёт страница, и отправьте форму обычным способом. Для reCAPTCHA v2 это скрытое поле g-recaptcha-response; если у виджета есть data-callback, вызовите эту функцию с токеном. Для v3 посмотрите, как страница отправляет токен (поле формы или параметр запроса).

Автоматизация браузера (контекст страницы)
document.querySelector('[name="g-recaptcha-response"]').value = token;
document.querySelector("form").submit();

Приём вебхуков#

Проверка подписи на Python, Node.js, Go и PHP — на странице Вебхуки.