# Как определить тип капчи

> Как понять, какая капча на странице: reCAPTCHA v2, невидимая v2, v3, Enterprise, hCaptcha, чем Cloudflare Turnstile отличается от страницы проверки Cloudflare и какой тип задачи YesCaptcha использовать.

Source: https://docs.yescaptcha.com/ru/guides/identify-captcha/ · Last verified: 2026-10-15

> This page was machine-translated from the Chinese version. If anything differs, the Chinese version prevails: https://docs.yescaptcha.com/zh/guides/identify-captcha/

Выбор правильного типа задачи начинается с того, чтобы распознать капчу. Самый надёжный способ — открыть инструменты разработчика в браузере (F12) и посмотреть на вкладке Network, скрипт какой капчи загружает страница. Можно также ориентироваться по внешнему виду.

## Определить по внешнему виду

Как каждая капча выглядит на веб-странице (анимированные иллюстрации, а не скриншоты); нажмите на карточку, чтобы открыть страницу типа задачи. Если по внешнему виду определить трудно, проверьте по краткой таблице и панели Network ниже.

-   [reCAPTCHA v2: Флажок · Невидимая](https://docs.yescaptcha.com/ru/tasks/recaptcha-v2.md)
-   [reCAPTCHA v3](https://docs.yescaptcha.com/ru/tasks/recaptcha-v3.md)
-   [Распознавание изображений reCAPTCHA v2: Сетка 3×3 · Сетка 4×4 · Одно изображение 1×1](https://docs.yescaptcha.com/ru/tasks/recaptcha-classification.md)
-   [hCaptcha](https://docs.yescaptcha.com/ru/tasks/hcaptcha.md)
-   [Распознавание изображений hCaptcha: Сетка изображений · Клик по точке · Перетаскивание · Анимированная](https://docs.yescaptcha.com/ru/tasks/hcaptcha-classification.md)
-   [Cloudflare Turnstile: Автоматическая · Флажок](https://docs.yescaptcha.com/ru/tasks/turnstile.md)
-   [Страница проверки Cloudflare: Автоматическая · Флажок](https://docs.yescaptcha.com/ru/tasks/cloudflare-challenge.md)
-   [Распознавание изображений FunCaptcha: Стрелки · Сетка из 6 изображений](https://docs.yescaptcha.com/ru/tasks/funcaptcha-classification.md)
-   [Распознавание изображений AWS WAF / bCaptcha: AWS WAF · bCaptcha](https://docs.yescaptcha.com/ru/tasks/aws-bcaptcha-classification.md)
-   [Распознавание текста на изображении: С шумом · Линии-помехи · Математическая](https://docs.yescaptcha.com/ru/tasks/image-to-text.md)

## Краткая таблица

| Что вы видите | Что это | Какой тип задачи |
| --- | --- | --- |
| Флажок «Я не робот» / «I’m not a robot» | reCAPTCHA v2 | [reCAPTCHA v2](https://docs.yescaptcha.com/ru/tasks/recaptcha-v2.md) |
| Флажка нет, задание с картинками появляется только после нажатия кнопки отправки; в правом нижнем углу небольшой значок reCAPTCHA | Невидимая reCAPTCHA v2 (или v3) | См. ниже «Версии reCAPTCHA» |
| Никакого взаимодействия, в правом нижнем углу только значок reCAPTCHA | reCAPTCHA v3 | [reCAPTCHA v3](https://docs.yescaptcha.com/ru/tasks/recaptcha-v3.md) |
| Флажок «Я человек», задания с картинками с пометкой hCaptcha | hCaptcha | [hCaptcha](https://docs.yescaptcha.com/ru/tasks/hcaptcha.md) |
| В форму встроено окно проверки Cloudflare, после установки флажка страница не перезагружается | Cloudflare Turnstile | [Turnstile](https://docs.yescaptcha.com/ru/tasks/turnstile.md) |
| Вся страница показывает «Подождите…» / «Проверка подключения» и автоматически перенаправляет | Страница проверки Cloudflare | [Страница проверки Cloudflare](https://docs.yescaptcha.com/ru/tasks/cloudflare-challenge.md) |
| Пазлы и задания с выбором картинок от Arkose Labs (например, «Выберите изображение, расположенное правильно») | FunCaptcha | [Распознавание изображений FunCaptcha](https://docs.yescaptcha.com/ru/tasks/funcaptcha-classification.md) |
| Картинка с искажёнными буквами и цифрами | Символьная капча | [Распознавание текста на изображении](https://docs.yescaptcha.com/ru/tasks/image-to-text.md) |

## Версии reCAPTCHA

В панели Network найдите `api.js` или `enterprise.js`:

| Загружаемый скрипт | Версия |
| --- | --- |
| `recaptcha/api.js` без параметра `render` или с `render=explicit` | v2 обычная версия |
| То же, и в адресе запроса `anchor` есть `size=invisible` | v2 невидимая версия, добавьте в задачу `"isInvisible": true` |
| `recaptcha/api.js?render=SITE_KEY` (`render` не равен `explicit`) | v3 обычная версия |
| `recaptcha/enterprise.js` без параметра `render` или с `render=explicit` | v2 Enterprise |
| `recaptcha/enterprise.js?render=SITE_KEY` | v3 Enterprise |

Примеры:

```text
https://www.google.com/recaptcha/api.js?onload=onloadcallback&render=explicit   → v2
https://www.google.com/recaptcha/api.js?render=6LdyC2cUAAAAACGuDKpXeDorzUDWXmdqeg-xy696   → v3
https://www.google.com/recaptcha/enterprise.js?render=explicit   → v2 Enterprise
```

Невидимая v2 иногда проходит только с типом задачи для v3, поэтому попробуйте оба варианта.

Также можно выполнить в консоли (Console) следующий код: он выведет все reCAPTCHA на странице с версией, ключом сайта, адресом страницы и функцией обратного вызова:

find-recaptcha-clients.js

```js
// Paste into the browser DevTools console on a page with reCAPTCHA, then run findRecaptchaClients().
// Lists every reCAPTCHA on the page: version (V2/V3), sitekey, page URL and the callback function.
function findRecaptchaClients() {
  if (typeof ___grecaptcha_cfg === 'undefined') return [];
  return Object.entries(___grecaptcha_cfg.clients).map(([cid, client]) => {
    const data = { id: cid, version: cid >= 10000 ? 'V3' : 'V2' };
    const objects = Object.entries(client).filter(([, value]) => value && typeof value === 'object');
    objects.forEach(([toplevelKey, toplevel]) => {
      const found = Object.entries(toplevel).find(
        ([, value]) => value && typeof value === 'object' && 'sitekey' in value && 'size' in value,
      );
      if (toplevel instanceof HTMLElement && toplevel.tagName === 'DIV') data.pageurl = toplevel.baseURI;
      if (found) {
        const [sublevelKey, sublevel] = found;
        data.sitekey = sublevel.sitekey;
        const callbackKey = data.version === 'V2' ? 'callback' : 'promise-callback';
        const callback = sublevel[callbackKey];
        if (!callback) {
          data.callback = null;
          data.function = null;
        } else {
          data.function = callback;
          const keys = [cid, toplevelKey, sublevelKey, callbackKey].map((key) => `['${key}']`).join('');
          data.callback = `___grecaptcha_cfg.clients${keys}`;
        }
      }
    });
    return data;
  });
}

findRecaptchaClients();
```

Пример результата:

```json
[
  {
    "id": "0",
    "version": "V2",
    "sitekey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
    "function": "onSuccess",
    "callback": "___grecaptcha_cfg.clients['0']['l']['l']['callback']",
    "pageurl": "https://www.google.com/recaptcha/api2/demo"
  }
]
```

Для сравнения можно использовать официальные демо-страницы Google: v2 обычная версия — `https://www.google.com/recaptcha/api2/demo`, v2 невидимая версия — `https://www.google.com/recaptcha/api2/demo?invisible=true`.

## Turnstile и страница проверки Cloudflare

Обе технологии принадлежат Cloudflare, но это разные вещи:

-   **Turnstile** — окно проверки, встроенное в форму на странице. После прохождения проверки появляется галочка, а сама страница не перезагружается. Страница загружает `challenges.cloudflare.com/turnstile/v0/api.js`. Используйте [Turnstile](https://docs.yescaptcha.com/ru/tasks/turnstile.md).
-   **Страница проверки Cloudflare** полностью заменяет страницу экраном проверки Cloudflare с текстом «Подождите…» или «xx.com необходимо проверить безопасность вашего подключения»; на ней тоже может быть окно проверки. После прохождения происходит автоматический переход на нужную страницу. В исходном коде есть `__cf_chl_rt_tk` или `cdn-cgi/challenge-platform`. Используйте [Страница проверки Cloudflare](https://docs.yescaptcha.com/ru/tasks/cloudflare-challenge.md).

Если при запросе из программы приходит ответ 403 с «Just a moment…», а в браузере страница открывается напрямую, скорее всего, блокируется только TLS-отпечаток. Используйте библиотеку, которая имитирует TLS-отпечаток браузера (например, curl\_cffi): запрос пройдёт, и проходить проверку не придётся.
