На одном и том же веб-сайте одному посетителю предлагается пройти проверку reCAPTCHA на английском языке, а другому — на японском. Виджет Cloudflare Turnstile отображает текст загрузки на языке браузера. Некоторые сайты обслуживают совершенно разные типы CAPTCHA в зависимости от региона, обнаруженного посетителем. Понимание того, как локализация влияет на CAPTCHA, поможет вам правильно обрабатывать их при автоматизации.
Что меняется с локалью
| Поставщик капчи | Что локализует | Что остается прежним |
|---|---|---|
| рекапча | Текст пользовательского интерфейса, метки изображений, язык аудио | Sitekey, поток проверки, формат токена |
| Cloudflare Turnstile | Текст виджета и сообщения об ошибках | Sitekey, формат токена, механизм решения |
| hCaptcha | Инструкции по испытаниям, метки категорий | Sitekey, формат токена |
| Изображение/OCR | Набор символов, язык текста | Формат изображения, поток submit/poll |
Как обнаруживается язык
Поставщики CAPTCHA определяют язык по нескольким сигналам:
1. Заголовок Accept-Language
Accept-Language: ja-JP,ja;q=0.9,en-US;q=0.8,en;q=0.7
Это сообщает серверу: предпочитайте японский (Япония), затем английский (США), затем общий английский. reCAPTCHA и Turnstile используют это для выбора языка пользовательского интерфейса.
2. Параметр HTML hl
reCAPTCHA принимает явный языковой параметр при загрузке:
<!-- Force English reCAPTCHA -->
<script src="https://www.google.com/recaptcha/api.js?hl=en"></script>
<!-- Force Japanese -->
<script src="https://www.google.com/recaptcha/api.js?hl=ja"></script>
Параметр hl переопределяет заголовок Accept-Language. При решении вам не обязательно сопоставлять это — CaptchaAI возвращает токен независимо от языка пользовательского интерфейса.
3. Гео-IP-локация
Некоторые конфигурации CAPTCHA различаются в зависимости от региона:
| Сигнал | Эффект |
|---|---|
| ИП из Китая | Может получить GeeTest вместо reCAPTCHA (reCAPTCHA заблокирована в Китае) |
| IP из ЕС | Можно увидеть согласие GDPR перед CAPTCHA |
| IP из ограниченного региона | Могут возникнуть более строгие испытания |
4. Браузер navigator.language
CAPTCHA на основе JavaScript считывает язык браузера:
navigator.language // "en-US"
navigator.languages // ["en-US", "en", "ja"]
В автономных браузерах по умолчанию используются системные локали. Установите их явно в соответствии с вашей целью:
// Playwright
const context = await browser.newContext({
locale: 'ja-JP',
});
// Puppeteer
const page = await browser.newPage();
await page.setExtraHTTPHeaders({
'Accept-Language': 'ja-JP,ja;q=0.9',
});
Влияние на решение
Капчи на основе токенов (reCAPTCHA, Turnstile, hCaptcha)
Языковые настройки влияют на UI, но не на токен. Процесс решения CaptchaAI не зависит от языка:
- Отправьте ключ сайта и URL-адрес страницы.
- CaptchaAI возвращает действительный токен.
- Токен работает независимо от того, на каком языке отображается виджет CAPTCHA.
При вызове CaptchaAI для CAPTCHA на основе токенов не требуется языковой параметр.
Изображение CAPTCHA
Язык напрямую влияет на символы изображения:
| Язык сайта | Капча-контент | Языковой параметр CaptchaAI |
|---|---|---|
| Английский | «Введите текст: XKCD42» | 0 (по умолчанию /Latin) |
| Русский | "Введите текст: ШКАФ" | 1 (кириллица) или 2 |
| китайский | "请输入验证码: 汉字" | 2 (не латиница) |
| арабский | "أدخل النص: عربي" | 2 (не латиница) |
| японский | «文字を入力: ひらがな» | 2 (не латиница) |
Аудио CAPTCHA
Звуковые запросы reCAPTCHA озвучиваются на языке, соответствующем параметру hl или заголовку Accept-Language. CaptchaAI решает эти проблемы посредством стандартного процесса решения reCAPTCHA — метод решения не зависит от языка аудио.
Распространенные проблемы локализации
Несовпадающий язык между парсером и целью
Если ваш парсер отправляет Accept-Language: en-US на японский сайт, CAPTCHA может отображаться на английском языке — это нормально для CAPTCHA на основе токенов, но может вызвать проблемы, если сайт проверяет согласованность языка.
Региональные различия поставщиков CAPTCHA
В некоторых странах используются разные поставщики CAPTCHA:
| Область | Типичные поставщики |
|---|---|
| Западные рынки | reCAPTCHA, Cloudflare Turnstile, hCaptcha |
| Китай | GeeTest, Tencent CAPTCHA, собственное изображение |
| Россия/CIS | Пользовательские изображения CAPTCHA, reCAPTCHA |
| Южная Корея | Пользовательские слайдеры, CAPTCHA для изображений |
Поиск неисправностей
| Проблема | Причина | Исправить |
Следующие шаги
- CaptchaAI Quickstart: ваше первое решение CAPTCHA за 5 минут
- Как решить reCAPTCHA v2 через API: пошаговое руководство
- Как решить Cloudflare Turnstile через API
- Как решить GeeTest v3 с помощью API