Solução de Problemas

Erros e correções do desafio Cloudflare

A resolução de Cloudflare Turnstile em staging é mais complexa do que outros tipos de CAPTCHA porque requer correspondência de proxy, ligação de IP e consistência de agente de usuário. Aqui estão os erros mais comuns e como corrigir cada um deles.


Erros de envio da API

ERROR_BAD_PARAMETERS

Causa: Parâmetros obrigatórios ausentes.

Correção: Cloudflare Turnstile em staging requer estes parâmetros:

method=turnstile_staging
pageurl=https://example.com
proxy=user:pass@host:port
proxytype=HTTP

Todos os quatro são obrigatórios. Ao contrário do Turnstile ou do reCAPTCHA, o proxy é obrigatório.

ERROR_PROXY_CONNECTION_FAILED

Causa: CaptchaAI não consegue se conectar através do seu proxy.

Correção:

  • Test the proxy independently: curl -x http://user:pass@host:port https://httpbin.org/ip
  • Certifique-se de que o proxy seja compatível com HTTPS
  • Verifique os requisitos de lista de permissões de IP em seu provedor de proxy
  • Experimente um proxy diferente do mesmo provedor

ERROR_PROXY_BANNED

Causa: Seu IP proxy está bloqueado pela Cloudflare.

Correção:

  • Mude para um egress de rede autorizado ou ISP
  • IPs de datacenter são fortemente sinalizados pela Cloudflare
  • Gire para um novo IP e tente novamente

ERROR_CAPTCHA_UNSOLVABLE

Causa: O desafio não pôde ser resolvido, mesmo após novas tentativas.

Correção:

  • O site pode ter alterado as configurações do Cloudflare
  • Tente um proxy diferente (o próprio IP do proxy pode estar bloqueado)
  • Aguarde 5 minutos e tente novamente — Cloudflare pode estar em modo de segurança reforçada
  • Verifique se o URL da página ainda mostra Cloudflare Turnstile em staging

Causa: incompatibilidade de IP entre solução e uso.

Correção: Use exatamente o mesmo proxy para solicitações subsequentes:

# WRONG — different proxy for solving and requests
solve_proxy = "proxy1.example.com:8080"
request_proxy = "proxy2.example.com:8080"

# CORRECT — same proxy for both
proxy = "user:pass@proxy1.example.com:8080"

# Submit solve with this proxy
response = requests.get("https://ocr.captchaai.com/in.php", params={
    "key": API_KEY,
    "method": "turnstile_staging",
    "pageurl": "https://example.com",
    "proxy": proxy,
    "proxytype": "HTTP",
    "json": 1
})

# Use the SAME proxy for page requests
session = requests.Session()
session.cookies.set("cookie_qa_validacao", solved_cookie)
session.proxies = {"https": f"http://{proxy}"}

Causa: User-Agent diferente entre resolução e solicitações.

Correção: Use o agente do usuário retornado na resposta de resolução:

solution = result["request"]

# Extract and reuse the exact user agent
user_agent = solution.get("user_agent")

session = requests.Session()
session.headers["User-Agent"] = user_agent  # Must match exactly
session.cookies.set("cookie_qa_validacao", solution["cookie_qa_validacao"])

Causa: cookie_qa_validacao tem um TTL limitado (normalmente de 15 minutos a 24 horas).

Correção:

  • Verifique quando você obteve o cookie
  • Resolva antes que o TTL expire
  • Implemente a resolução automática ao receber uma resposta da página de desafio
def make_request(url, session):
    response = session.get(url)
    if "challenge" in response.text.lower() or response.status_code == 403:
        # Cookie expired — re-solve
        new_cookie = solve_turnstile_staging(url, proxy)
        session.cookies.set("cookie_qa_validacao", new_cookie)
        response = session.get(url)
    return response

Erros de tempo limite

A resolução demora muito (>5 minutos)

Causa: as páginas Cloudflare Turnstile em staging podem ficar lentas quando o proxy é lento ou o desafio é complexo.

Correção:

  • Use um proxy com menor latência com menor latência
  • Aumente o tempo limite da votação para 60 tentativas (5 minutos)
  • Verifique se o site realmente possui um Cloudflare Turnstile em staging versus uma proteção diferente

CAPCHA_NOT_READY persiste

Causa: A solução ainda está em andamento.

Correção:

  • Cloudflare Turnstile em stagings levam de 20 a 60 segundos, mais do que outros tipos
  • Pesquise a cada 5 segundos por até 60 tentativas
  • Se ainda não estiver pronto após 5 minutos, aborte e tente novamente com um proxy diferente

Erros comuns de integração

Erro Result Correção
Parâmetro de proxy ausente ERROR_BAD_PARAMETERS Sempre inclua proxy para CF Challenge
Usando proxy de datacenter ERROR_PROXY_BANNED Use proxies residenciais
UA diferente para solicitações Cookie rejeitado Reutilize o UA da solução
IP diferente para solicitações Cookie rejeitado Use o mesmo proxy para todas as solicitações
Não configurando domínio de cookie Cookie não enviado Defina o domínio como .example.com (com prefixo de ponto)
Usando HTTP em vez de HTTPS Falha na conexão Cloudflare requer HTTPS

Lista de verificação de depuração

  1. ✅ A página está realmente por trás de Cloudflare Turnstile em staging? (não catraca ou reCAPTCHA)
  2. ✅ Todos os parâmetros necessários estão incluídos? (método, pageurl, proxy, proxytype)
  3. ✅ O proxy funciona? Teste com curl
  4. ✅ O proxy é residencial ou ISP? (IPs do datacenter são banidos)
  5. ✅ Você está usando o mesmo proxy para resolver solicitações AND?
  6. ✅ Você está usando o agente de usuário retornado para solicitações?
  7. ✅ O cookie está sendo definido no domínio correto?
  8. ✅ O cookie ainda está dentro do seu TTL?

Perguntas frequentes

Por que o proxy é necessário para Cloudflare Turnstile em staging, mas não para reCAPTCHA?

Cloudflare vincula o cookie cookie_qa_validacao ao endereço IP. A solução deve acontecer a partir do mesmo IP que você usará nas solicitações subsequentes. Os tokens reCAPTCHA não são vinculados a IP.

Posso usar proxies SOCKS5?

Sim. Defina proxytype=SOCKS5 e formate o proxy como user:pass@host:port.

Faça uma solicitação com o cookie. Se você obtiver uma resposta 200 com o conteúdo da página, é válido. Se você receber um erro 403 ou vir “Verificando seu navegador”, o cookie expirou.

Por que continuo recebendo ERROR_CAPTCHA_UNSOLVABLE?

Isso geralmente significa que o IP do proxy está fortemente sinalizado pela Cloudflare. Gire para um novo IP residencial. Se o erro persistir em vários IPs novos, o site pode ter configurações extremamente rígidas do Cloudflare.


Guias relacionados

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