Se o seu formulário usa GeeTest ou reCAPTCHA, "qual é mais difícil" depende do que você está otimizando: linhas de código para integrar ou threads simultâneas para escalar. O reCAPTCHA v3 roda em segundo plano e devolve um único token; o GeeTest v3 exige buscar um desafio novo a cada tentativa e enviar três valores de resposta. Essa diferença estrutural decide como você monta o polling e o plano da CaptchaAI certo para o seu volume.
GeeTest x reCAPTCHA: comparação completa
| Critério | GeeTest v3 | reCAPTCHA v2 | reCAPTCHA v3 |
|---|---|---|---|
| Tipo de desafio | Quebra-cabeça de slide/ícone/palavra | Seleção em grade de imagens | Nenhum (invisível) |
| Parâmetros necessários | gt, challenge, pageurl | googlekey, pageurl | googlekey, action, pageurl |
| Extração de parâmetros | Média (precisa buscar gt + challenge) | Fácil (sitekey estática) | Fácil (sitekey estática + action) |
| Parâmetros dinâmicos | Desafio muda a cada sessão | Sitekey estática | Sitekey estática |
| Método da API | method=geetest |
method=userrecaptcha |
method=userrecaptcha + version=v3 |
| Tempo de resolução | 15–30 s | 15–30 s | 5–10 s |
| Formato/leitura da resposta | challenge, validate, seccode (3 valores) | Token único | Token único + pontuação |
| Reaproveitamento do desafio | Não (uso único) | N/A (baseado em token) | N/A (baseado em token) |
| Nível gratuito | Limitado | Sim | Sim |
| Foco geográfico | China, Ásia, crescendo globalmente | Global | Global |
Como cada um detecta bots
| Sinal analisado | GeeTest | reCAPTCHA |
|---|---|---|
| O que observa | Velocidade, curvas de aceleração, microcorreções do mouse | Comportamento ao longo do tempo (pontuação contínua no v3) |
| Indício de bot | Movimento linear demais do mouse | Reputação de IP e cookies do Google abaixo do esperado |
| Verificação de tempo | Resposta rápida ou consistente demais é sinalizada | Não se aplica diretamente |
| Sinal adicional | Inspeciona o navegador em busca de automação | O v2 soma um desafio visual como verificação extra |
| Modo invisível | Não existe — o usuário sempre interage | Só no v3, via pontuação contínua |
Como resolver os dois com a CaptchaAI
Nota rápida: os dois métodos usam os mesmos endpoints da CaptchaAI —
in.phppara enviar a tarefa,res.php(viapoll_result) para consultar o resultado. Só o payload muda.
GeeTest v3
O GeeTest v3 é o único caso em que você busca dados antes de enviar a tarefa: gt e challenge vêm da página. A resposta chega em três partes, reinjetadas no formulário.
# Must fetch fresh challenge first
params = requests.get("https://example.com/api/captcha").json()
resp = requests.get("https://ocr.captchaai.com/in.php", params={
"key": API_KEY, "method": "geetest",
"gt": params["gt"], "challenge": params["challenge"],
"pageurl": URL, "json": 1
}).json()
# Solution has 3 parts
solution = poll_result(resp["request"])
# solution = {geetest_challenge, geetest_validate, geetest_seccode}
reCAPTCHA v2
No reCAPTCHA v2 o googlekey é estático — nada para buscar antes da requisição. A resposta vem como token único, pronto para o campo g-recaptcha-response.
resp = requests.get("https://ocr.captchaai.com/in.php", params={
"key": API_KEY, "method": "userrecaptcha",
"googlekey": "6Le-wvkSAAAA...", "pageurl": URL, "json": 1
}).json()
# Solution is a single token
token = poll_result(resp["request"])
O que muda na hora de automatizar
- Parâmetros novos a cada solução: GeeTest sim, o challenge é de uso único; reCAPTCHA não, a sitekey é estática.
- Gerenciamento de sessão: GeeTest mantém estado entre buscar os parâmetros e enviar a solução; no reCAPTCHA o token funciona sozinho.
- Envio da resposta: GeeTest envia 3 campos ao formulário; reCAPTCHA injeta 1 campo oculto.
- Comportamento de fallback: GeeTest geralmente não tem alternativa; o reCAPTCHA v3 costuma cair para o v2.
- Tratamento de erros: GeeTest precisa lidar com challenges expirados; reCAPTCHA precisa lidar com a expiração do token.
Cenário prático: QA de checkout com CAPTCHA
Cenário comum em QA no Brasil: workers em sa-east-1 (São Paulo) reduzem latência ao testar checkout com reCAPTCHA ou GeeTest em staging.example.com. Como o GeeTest mantém sessão entre buscar o desafio e enviar a resposta, meça o RTT antes do timeout do polling.
Sob a LGPD, mantenha nos logs de QA só dados fictícios — nunca dados reais de clientes.
Perguntas frequentes
Preciso de mais threads da CaptchaAI para resolver GeeTest do que reCAPTCHA?
Não há sobretaxa por tipo — do BASIC (US$ 15/mês, 5 threads) ao VIP-3 (US$ 7500/mês, 5000 threads), todo plano cobra por thread simultânea, com solves ilimitados. O GeeTest ocupa a thread por mais tempo, pedindo mais threads em volume alto.
Existe suporte da CaptchaAI para o GeeTest v4?
Ainda não. O GeeTest v4 está oficialmente "em breve"; a CaptchaAI resolve o GeeTest v3 em produção, com o método geetest.
Por que o GeeTest exige mais código para integrar do que o reCAPTCHA?
Porque a resposta tem três partes (geetest_challenge, geetest_validate, geetest_seccode) a extrair e reenviar em ordem, contra o token único do reCAPTCHA. A taxa de sucesso é semelhante nos dois.