Типы капчи и какие из них может решить сервис
Существует несколько основных типов капчи. Одни просят посетителя что-то прочитать или выбрать, другие проводят проверки в фоновом режиме, а третьи сочетают виджет с серверной проверкой. Тип определяет, как скрипт может пройти капчу, а поддержка типа решателем определяет, можно ли его использовать. Этот гайд перечисляет основные типы, объясняет, как работает каждый из них, и указывает текущий статус поддержки Scarnox.
Коротко: сегодня у Scarnox есть один живой тип задачи — PopularCaptcha, proxyless. Остальные типы скоро появятся, и разделы ниже подскажут, какие именно.
Статус поддержки одним взглядом
| Тип капчи | Как работает | Статус в Scarnox |
|---|---|---|
| Виджет PopularCaptcha | Виджет, который записывает токен в h-captcha-response | Работает (proxyless) |
| Текстовые и картиночные челленджи | Нужно прочитать или выбрать символы и объекты | Не является живым типом задачи |
| Аудиочелленджи | Расшифровать озвученный фрагмент | Не является живым типом задачи |
| Google reCAPTCHA v2 | Чекбокс, а при подозрении картиночные челленджи | Скоро |
| Google reCAPTCHA v3 | Оценка по поведению, без челленджа | Скоро |
| Cloudflare Turnstile | Неинтерактивные проверки в браузере | Скоро |
| Arkose Labs (FunCaptcha) | Игровые enforcement-челленджи | Скоро |
| GeeTest | Слайдеры и головоломки-пазлы | Скоро |
| Капча AWS WAF | Пазловые челленджи от AWS WAF | Скоро |
Прежде чем строить что-либо под конкретный тип, сверьтесь с гайдом по API решателя капчи и справочником API. Эта таблица отражает статус на момент написания.
Текстовые капчи
Текстовая капча показывает искажённые символы, которые нужно ввести. Искажение призвано помешать простому оптическому распознаванию. Это самый старый тип, сегодня он редок на крупных сайтах, но ещё встречается в небольших формах и старых системах.
Картиночные капчи
Картиночная капча просит выбрать все плитки, на которых есть объект, например светофоры, пешеходные переходы или витрины. Задача — это классификация, а продвинутая версия может требовать несколько раундов. Инструменты парсинга и автоматизации часто натыкаются на них на высоконагруженных сайтах. Гайд по OCR для текстовых и картиночных капч охватывает сторону чтения этой задачи.
Аудиокапчи
Аудиокапча проигрывает озвученную последовательность цифр или слов, обычно как вариант доступности. Звук искажён шумом. Такие капчи существуют в основном как альтернатива для пользователей, которые не могут видеть визуальную задачу, поэтому их стоит предлагать вместе с доступными альтернативами, а не заменять автоматизацией.
Пазловые капчи
Пазловые капчи требуют физического действия: вставить кусочек в зазор, повернуть изображение в вертикальное положение или перетащить фигуру. Слайдер-пазлы распространены, а GeeTest — известный провайдер таких капч. Ответ берётся из позиции или угла, и челлендж часто проверяет не только конечную точку, но и то, как было сделано перетаскивание.
Невидимые и основанные на оценке капчи
Некоторые капчи работают без видимой задачи. Браузер выполняет проверки в фоне, а сайт по результату решает, показывать ли вообще челлендж. Именно это подразумевают под «невидимой капчей». reCAPTCHA v3 идёт дальше и возвращает оценку, а не пройдено или нет. Гайд о невидимой капче объясняет, как невидимый режим влияет на интеграцию с решателем, а гайд о reCAPTCHA v3 score подробно описывает оценку.
Токен-виджеты
Токен-виджет — это виджет на странице, который выполняет свои проверки и записывает токен в скрытое поле формы. Сайт отправляет этот токен провайдеру или собственному бэкенду для верификации. Этот шаблон используют PopularCaptcha, reCAPTCHA v2 и Cloudflare Turnstile.
Именно этот тип решатель может обработать, не трогая визуальную задачу. Решатель формирует токен, а ваш код записывает его в форму. Поэтому интеграция PopularCaptcha занимает всего несколько строк. Гайд о решении капчи на Python показывает поток.
Enforcement-челленджи
Некоторые крупные сайты используют enforcement-челленджи, которые сочетают оценку риска с игровой головоломкой. Arkose Labs, которую часто называют FunCaptcha, — самый известный пример. Головоломки часто меняются, а движок оценки риска настраивается под каждый сайт, что усложняет работу с ними общим подходом.
Почему тип важен для вашего кода
Каждому типу нужен свой вид решателя:
- Челленджи с содержимым требуют модели, которая может прочитать или классифицировать то, что на экране.
- Пазловые челленджи требуют модели, которая оценивает позицию или угол, плюс реалистичного перетаскивания.
- Токен-виджетам нужен решатель, который формирует валидный ответ для провайдера.
Решателю, который заявляет, что «решает все капчи», стоит задавать вопросы. Спросите, какие типы он поддерживает в реальном времени и что делает с теми, которые не поддерживает.
Что делать с неподдерживаемым типом
Если нужной вам капчи нет в списке живых, у вас есть три реалистичных варианта:
- Снизить частоту, с которой она появляется, используя подходы из гайда о том, как избежать капчи при парсинге.
- Использовать тестовый ключ или staging-окружение, если капча защищает вашу собственную систему.
- Попросить владельца сайта об API, белом списке или доступной альтернативе.
Поддержка типов, которые скоро появятся, находится в разработке. Создайте аккаунт: вы начнёте с пробного баланса, карта не нужна, и будете готовы использовать каждый тип, когда он выйдет.