Explainers

Requisitos de cookies reCAPTCHA: o que é definido e por que é importante

Se a sua automação sempre cai nos desafios de imagem mais difíceis do reCAPTCHA, o culpado raramente é o site — é o estado dos cookies do navegador. O Google usa os cookies gravados em .google.com como um dos principais sinais de risco: um perfil com histórico normal de navegação costuma passar só no clique da caixa de seleção, enquanto um navegador "zerado" cai direto em desafios de várias rodadas. Este guia mostra exatamente quais cookies o reCAPTCHA grava e lê, como eles mudam a dificuldade do desafio e o que vale a pena preservar nas suas sessões de automação para melhorar a taxa de resolução.

Por que os cookies mudam a dificuldade do desafio reCAPTCHA

O mecanismo de risco do reCAPTCHA não olha só para o clique na caixa de seleção — ele cruza vários sinais, e os cookies do Google pesam bastante nessa conta:

Estado do cookie Dificuldade do desafio Por quê
Logado em uma conta do Google Mais baixa Sinal de identidade forte
Cookies do Google presentes (sem login) Baixa a média Mostra histórico de navegação normal
Navegador novo, sem cookies do Google Média a alta Sem histórico para avaliar o risco
Cookies bloqueados ou removidos Alta Padrão suspeito — navegadores normais têm cookies
Modo anônimo/privado Alta Sem identidade persistente

O impacto na prática

Na prática, o resultado se resume a três cenários:

  1. Melhor cenário: o navegador carrega os cookies SID, HSID e NID de uma sessão do Google já autenticada → o desafio quase sempre passa só com o clique na caixa de seleção.
  2. Cenário intermediário: o navegador tem NID e 1P_JAR vindos de navegação normal, sem login → desafios de imagem mais simples ou passagem direta pela caixa de seleção.
  3. Pior cenário: sessão nova, sem nenhum cookie do Google → desafios de imagem em múltiplas rodadas.

Quais cookies o reCAPTCHA grava e lê

Cookies de domínio do Google

Gravados em .google.com e lidos pelo iframe do reCAPTCHA:

Cookie Domínio Finalidade Validade
NID .google.com Preferências do Google e ID único 6 meses
SID/HSID/SSID .google.com Sessão da conta do Google (se estiver logado) 2 anos
APISID / SAPISID .google.com Autenticação da API do Google 2 anos
1P_JAR .google.com Personalização de anúncios do Google 1 mês
CONSENT .google.com Preferência de consentimento de cookies 17 anos

Cookies específicos do reCAPTCHA

Cookie Domínio Finalidade Validade
_GRECAPTCHA .google.com / .recaptcha.net Rastreamento da sessão reCAPTCHA Sessão
rc::a localStorage Dados de análise de risco Persistente
rc::b localStorage Registro de data e hora Sessão
rc::c localStorage Dados específicos do desafio Sessão
rc::d-<id> localStorage Dados por widget Sessão

Cookies do site que hospeda o reCAPTCHA

O próprio site onde o widget está embutido também pode usar cookies para sessão e proteção CSRF:

  • ID de sessão (PHPSESSID, session_id): vincula a resolução do CAPTCHA à sessão do usuário.
  • Token CSRF (csrf_token, _token): necessário para o envio do formulário.
  • Rastreamento personalizado (específico do site): pode influenciar quando o CAPTCHA é acionado.

Como preservar cookies do reCAPTCHA na automação

Com automação de navegador (Playwright/Puppeteer)

A automação com navegador real já lida com cookies naturalmente. Para preservá-los entre execuções:

# 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)

Um time de QA que testa staging.example.com a partir de um worker na região sa-east-1 da AWS ganha ao manter o mesmo perfil de navegador entre execuções: o histórico de cookies do Google se acumula em vez de zerar a cada pipeline, reduzindo desafios difíceis. Cuidado de LGPD: evite logar cookies de sessão em texto claro nos relatórios — grave só o necessário para depuração.

Com a API da CaptchaAI (resolução sem navegador)

Ao usar a CaptchaAI sem navegador, os cookies não afetam diretamente a resolução — a CaptchaAI gerencia o próprio ambiente de resolução. Ainda assim, você pode enviar cookies se o site de destino precisar deles para manter a continuidade da sessão:

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

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

O parâmetro cookies é opcional e serve apenas para enviar contexto adicional à CaptchaAI durante a resolução.

Dados em localStorage: o complemento dos cookies rc::

O reCAPTCHA também guarda dados de avaliação de risco no localStorage, sob chaves com o prefixo rc:::

Padrão de chave Dados
rc::a Carga codificada de análise de risco
rc::b Data e hora do último desafio
rc::c Dados da sessão de desafio atual
rc::d-<hash> Dados de instância por widget

Essas entradas ajudam o reCAPTCHA a manter o estado entre carregamentos de página sem depender de cookies de terceiros. Preservar o localStorage, junto com os cookies, costuma reduzir a dificuldade do próximo desafio:

# 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))")

Restrições de cookies entre domínios

O widget do reCAPTCHA carrega dentro de um iframe servido por google.com, e os navegadores modernos aplicam políticas cada vez mais rígidas de cookies:

  • SameSite=Lax (padrão): os cookies do Google não são enviados no iframe do reCAPTCHA por padrão.
  • Bloqueio de cookies de terceiros: o reCAPTCHA recorre a recaptcha.net ou ao modo first-party.
  • ITP (Safari): os cookies do Google expiram mais rápido, e desafios difíceis ficam mais frequentes.

Diante dessas restrições, o próprio Google usa recaptcha.net como domínio alternativo, mantém os dados rc::* no localStorage como estado do lado do cliente e oferece opções de carregamento first-party para clientes Enterprise.

Boas práticas para manter os cookies "quentes"

  • Persista perfis de navegador entre execuções — constrói histórico de navegação, o que reduz a dificuldade dos desafios.
  • Não limpe cookies entre tarefas — mantém a continuidade da avaliação de risco do Google.
  • Use recaptcha.net quando google.com estiver bloqueado — mesmo serviço, domínio alternativo.
  • Preserve as entradas rc:: do localStorage — mantém o estado da sessão do reCAPTCHA.
  • Visite propriedades do Google de vez em quando — renova a validade dos cookies.

Solução de problemas comuns

Problema Causa provável Correção
Sempre cai em desafios de imagem difíceis Sem cookies / perfil novo Construa um perfil de navegador com cookies do Google acumulados
reCAPTCHA mostra erro de "cookies necessários" Cookies de terceiros bloqueados Habilite cookies para google.com ou use recaptcha.net
Token válido, mas sessão não bate Cookie do site (PHPSESSID) não foi mantido Salve e restaure todos os cookies, não só os do Google
Loop de desafio — continua pedindo mais imagens localStorage foi limpo entre tentativas Preserve as entradas rc::* do localStorage

Perguntas frequentes

Rodar o navegador em modo headless muda como o reCAPTCHA lê os cookies?

Não pelo mecanismo em si — cookies e localStorage funcionam igual em modo headless. O que muda é a chance de o site tratar o headless como sinal de risco adicional, à parte do estado dos cookies.

A CaptchaAI precisa dos cookies do meu navegador para resolver o reCAPTCHA?

Não. A CaptchaAI resolve o reCAPTCHA de forma independente, usando a própria infraestrutura de resolução. Enviar cookies é opcional e serve só como contexto extra para o site de destino.

Por causa da LGPD, preciso anonimizar os cookies antes de registrar os testes?

Se os relatórios guardam cookies de sessão real (não fictícios), trate como dado sensível: não persista o valor bruto em logs de longo prazo e restrinja o acesso a cookies.json. Em testes com dados fictícios isso não se aplica.

O modo anônimo/privado prejudica a resolução do reCAPTCHA?

Sim. O modo anônimo limpa todos os cookies e o localStorage a cada sessão, o que deixa os desafios do reCAPTCHA mais difíceis. Para automação de navegador, um perfil persistente tende a gerar desafios mais fáceis.

Quais cookies eu devo priorizar ao restaurar uma sessão entre execuções?

Priorize NID, 1P_JAR e as entradas rc:: do localStorage — pesam mais na avaliação de risco e perdem validade mais rápido (o 1P_JAR dura cerca de 1 mês).

Artigos relacionados

Próximos passos

Melhore suas taxas de resolução de reCAPTCHA — obtenha sua chave de API da CaptchaAI e gerencie os cookies corretamente nos seus fluxos de automação.

Os comentários estão desativados para este artigo.