Типи капчі пояснено і які з них може розв'язати солвер
Є кілька основних типів капчі. Одні просять відвідувача щось прочитати або вибрати, інші виконують перевірки у фоновому режимі, а треті поєднують віджет із серверною перевіркою. Тип визначає, як скрипт може його пройти, а підтримка типу солвером визначає, чи можна його використовувати. Цей посібник перелічує основні типи, пояснює, як працює кожен, і вказує поточний статус підтримки 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 детально розглядає оцінювання.
Токен-віджети
Токен-віджет — це віджет на сторінці, який виконує свої перевірки і записує токен у приховане поле форми. Сайт надсилає цей токен провайдеру або власному бекенду для перевірки. PopularCaptcha, reCAPTCHA v2 і Cloudflare Turnstile використовують саме цей патерн.
Це тип, який солвер може обробити, не торкаючись візуального виклику. Солвер створює токен, а ваш код записує його у форму. Саме тому інтеграція PopularCaptcha займає лише кілька рядків. Посібник з розв'язання капчі на Python показує цей потік.
Enforcement-виклики
Деякі великі сайти використовують enforcement-виклики, які поєднують оцінку ризику з ігровою головоломкою. Arkose Labs, яку часто називають FunCaptcha, — найвідоміший приклад. Головоломки часто змінюються, а система оцінки ризику налаштована для кожного сайту, тому з ними важко працювати загальним підходом.
Чому тип важливий для вашого коду
Кожен тип потребує іншого солвера:
- Контентні виклики потребують моделі, яка може прочитати або класифікувати те, що є на екрані.
- Головоломки потребують моделі, яка оцінює положення або кут, плюс реалістичного перетягування.
- Токен-віджети потребують солвера, який створює дійсну відповідь для провайдера.
До солвера, який стверджує, що «розв'язує всі капчі», варто ставитися з недовірою. Запитайте, які типи він підтримує в реальному часі і що робить з тими, які не підтримує.
Що робити з непідтримуваним типом
Якщо потрібної вам капчі немає в списку чинних, у вас є три реалістичні варіанти:
- Зменшити частоту її появи, використовуючи підходи з посібника про уникнення капчі при скрапінгу.
- Використати тестовий ключ або staging-середовище, якщо капча захищає вашу власну систему.
- Попросити власника сайту про API, allowlist або доступну альтернативу.
Підтримка типів, що скоро з'являться, у роботі. Створіть обліковий запис і почніть з безкоштовного пробного кредиту, картка не потрібна. Тоді ви будете готові використати кожен тип, щойно він запрацює.