Технические разборы

Требования к файлам cookie reCAPTCHA: что устанавливается и почему это важно

reCAPTCHA считывает и записывает файлы cookie для оценки риска. Браузер со свежими файлами cookie Google сталкивается с более легкими проблемами, чем браузер без файлов cookie вообще. Понимание того, какие файлы cookie использует reCAPTCHA, поможет вам поддерживать состояние сеанса и улучшить результаты решения рабочих процессов автоматизации.

Они установлены на .google.com и считываются reCAPTCHA iframe:

печенье Домен Цель Продолжительность жизни
NID .google.com Настройки Google и уникальный идентификатор 6 месяцев
SID / HSID / SSID .google.com Сеанс учетной записи Google (если вы вошли в систему) 2 года
APISID / SAPISID .google.com Аутентификация API Google 2 года
1P_JAR .google.com Персонализация рекламы Google 1 месяц
CONSENT .google.com Предпочтение согласия на использование файлов cookie 17 лет
печенье Домен Цель Продолжительность жизни
_GRECAPTCHA .google.com / .recaptcha.net Отслеживание сеансов reCAPTCHA Сессия
rc::a локальное хранилище Данные анализа рисков Настойчивый
rc::b локальное хранилище Данные временной метки Сессия
rc::c локальное хранилище Данные по конкретным задачам Сессия
rc::d-<id> локальное хранилище Данные по виджетам Сессия

Сайт, на котором размещен reCAPTCHA, также может использовать файлы cookie для отслеживания сеанса и CSRF:

Тип файла cookie Пример Актуальность
Идентификатор сеанса PHPSESSID, session_id Связывает решение CAPTCHA с сеансом пользователя
CSRF-токен csrf_token, _token Требуется для отправки формы
Пользовательское отслеживание Для конкретного сайта Может повлиять на срабатывание CAPTCHA

Google использует файлы cookie в качестве одного из многих сигналов при оценке рисков:

Состояние файлов cookie Сложность испытания Почему
Вошёл в аккаунт Google Самый низкий Сильный сигнал идентичности
Куки Google присутствуют (не авторизован) Низкий–средний Показывает обычную историю просмотров
Свежий браузер, без файлов cookie Google Средний–высокий Нет истории для оценки риска
Файлы cookie заблокированы или удалены Высокий Подозрительно — в обычных браузерах есть файлы cookie.
Инкогнито/приватный режим Высокий Нет постоянной идентичности

Механизм риска reCAPTCHA сильно влияет на файлы cookie:

  1. В подходящий случае Браузер имеет файлы cookie SID, HSID, NID из сеанса Google, в котором выполнен вход. → часто проходит только при нажатии флажка.
  2. Хороший пример: в браузере есть NID и 1P_JAR из обычного просмотра →, более простые вызовы изображений или проверка флажков.
  3. Худший случай: отсутствие файлов cookie Google, новый сеанс. → многораундовые испытания изображений.

С автоматизацией браузера (Playwright/Puppeteer)

Автоматизация браузера естественным образом обрабатывает файлы cookie. Чтобы сохранить их между сеансами:

# Save cookies after session
cookies = page.context.cookies()
import json
with open("cookies.json", "w") as f:
    json.dump(cookies, f)

# Restore cookies in next session
with open("cookies.json") as f:
    cookies = json.load(f)
page.context.add_cookies(cookies)

С CaptchaAI (решение только через API)

При использовании CaptchaAI без браузера файлы cookie не влияют напрямую на решение — CaptchaAI управляет собственной средой решения. Однако вы можете захотеть передать файлы cookie, если целевой сайт требует их для непрерывности сеанса:

POST https://ocr.captchaai.com/in.php

key=YOUR_API_KEY
&method=userrecaptcha
&googlekey=SITE_KEY
&pageurl=https://https://staging.example.com/qa-login
&cookies=NID=12345;1P_JAR=2026-04-04-12

Параметр cookies является необязательным и отправляет контекст cookie в CaptchaAI для решения.

reCAPTCHA загружает iframe из google.com. Современные браузеры применяют строгую политику использования файлов cookie:

Политика браузера Влияние на reCAPTCHA
SameSite=Слабо (по умолчанию) Файлы cookie Google по умолчанию не отправляются в reCAPTCHA iframe
Блокировка сторонних файлов cookie reCAPTCHA возвращается к recaptcha.net или собственному режиму
ИТП (Сафари) Срок действия файлов cookie Google истекает быстрее, сложные задачи чаще

Меры по смягчению последствий от Google

Google устраняет ограничения сторонних файлов cookie следующим образом:

  • Использование recaptcha.net в качестве альтернативного домена
  • Использование localStorage (записей rc::*) для состояния на стороне клиента.
  • Использование параметров загрузки собственных сценариев для корпоративных клиентов.

Записи localStorage

reCAPTCHA сохраняет данные оценки рисков в localStorage под ключами с префиксом rc:::

Ключевой шаблон Данные
rc::a Закодированная полезная нагрузка для анализа рисков
rc::b Временная метка последнего испытания
rc::c Данные текущего сеанса испытаний
rc::d-<hash> Данные экземпляра виджета

Эти записи помогают reCAPTCHA поддерживать состояние при загрузке страниц, не полагаясь на сторонние файлы cookie. В автоматизации сохранение localStorage может снизить сложность задач:

# Save localStorage
storage = page.evaluate("() => JSON.stringify(localStorage)")
with open("localstorage.json", "w") as f:
    f.write(storage)

# Restore localStorage
with open("localstorage.json") as f:
    storage = f.read()
page.evaluate(f"Object.entries(JSON.parse('{storage}')).forEach(([k,v]) => localStorage.setItem(k,v))")

подходящий практики

Упражняться Выгода
Сохранять профили браузера между запусками Создает историю просмотров →, упрощая задачи
Не очищать файлы cookie между задачами Обеспечивает непрерывность оценки рисков Google.
Используйте recaptcha.net, когда google.com заблокирован. Тот же сервис, другой домен
Сохранять записи localStorage rc::. Поддерживает состояние сеанса reCAPTCHA
Время от времени посещайте ресурсы Google Обновляет срок действия файлов cookie.

Поиск неисправностей

| Проблема | Причина | Исправить |


Следующие шаги

  • CaptchaAI Quickstart: ваше первое решение CAPTCHA за 5 минут
  • Как решить reCAPTCHA v2 через API: пошаговое руководство
  • Как решить Cloudflare Turnstile через API
  • Как решить GeeTest v3 с помощью API
Комментарии для этой статьи отключены.