Tutoriais

n8n + CaptchaAI: Fluxo de trabalho de resolução de CAPTCHA sem código

n8n é uma ferramenta de automação de fluxo de trabalho de código aberto com suporte a loop nativo, tornando-o mais flexível do que o Zapier para resolução de CAPTCHA. Você pode criar um fluxo de trabalho de envio → enquete → usar que tenta novamente automaticamente até que a resolução seja concluída.


Visão geral do fluxo de trabalho

Manual Trigger / Cron
    ↓
HTTP Request: Submit CAPTCHA
    ↓
Wait: 10 seconds
    ↓
Loop: Poll until solved
    ├── HTTP Request: Get result
    ├── IF: status == 1? → Exit loop
    └── Wait: 5 seconds → Loop again
    ↓
HTTP Request: Use token

Nó 1: Enviar CAPTCHA

Adicione um nó Solicitação HTTP:

Configuração Valor
Método POST
URL https://ocr.captchaai.com/in.php
Tipo de conteúdo corporal Form URL Encoded

Parâmetros corporais:

Nome Valor
key {{ $credentials.captchaaiApiKey }} ou codifique sua chave
method userrecaptcha
googlekey 6Le-SITEKEY
pageurl https://example.com
json 1

Resposta:

{
  "status": 1,
  "request": "71823456"
}

Nó 2: Espere

Adicione um nó Aguarde:

Configuração Valor
Tempo de espera 10
Unidade Seconds

Isso dá ao solucionador tempo para iniciar o processamento antes da primeira pesquisa.


Nó 3: Resultado da enquete (com loop)

n8n suporta loops através do nó Loop Over Items ou conectando a saída falsa de um nó IF de volta a um nó anterior.

Opção A: loop IF simples

Adicione um nó Solicitação HTTP (Enquete):

Configuração Valor
Método GET
URL https://ocr.captchaai.com/res.php
Parâmetros de consulta key, action=get, id={{ $json.request }}, json=1

Conecte-o a um nó IF:

Condição Valor
Valor 1 {{ $json.status }}
Operação Equal
Valor 2 1
  • Saída verdadeira → Continue para a próxima ação (use token)
  • Saída falsa -> Aguarde (5 segundos) -> de volta ao nó Poll

Opção B: nó de código

Para obter mais controle, use um nó Code:

const apiKey = 'YOUR_API_KEY';
const taskId = $input.first().json.request;

for (let i = 0; i < 24; i++) {
  await new Promise(r => setTimeout(r, 5000));

  const resp = await fetch(
    `https://ocr.captchaai.com/res.php?key=${apiKey}&action=get&id=${taskId}&json=1`
  );
  const data = await resp.json();

  if (data.status === 1) {
    return [{ json: { token: data.request, taskId } }];
  }
  if (data.request !== 'CAPCHA_NOT_READY') {
    throw new Error(`CaptchaAI error: ${data.request}`);
  }
}

throw new Error(`Task ${taskId} timed out`);

Nó 4: Use o token

Adicione outro nó Solicitação HTTP para enviar o formulário com o token resolvido:

Configuração Valor
Método POST
URL https://staging.example.com/submit
Tipo de conteúdo corporal Form URL Encoded

Os parâmetros do corpo incluem os dados do seu formulário e mais:

Nome Valor
g-recaptcha-response {{ $json.token }}

Armazenando a chave API com segurança

Use o sistema Credenciais da n8n:

  1. Vá para Credenciais -> Adicionar credencial -> Autenticação de cabeçalho
  2. Nome: CaptchaAI API Key
  3. Guarde a chave com segurança

Ou use variáveis de ambiente:

# In your n8n environment
export CAPTCHAAI_API_KEY="your_key_here"

Referência em nós: {{ $env.CAPTCHAAI_API_KEY }}


Fluxo de trabalho de imagem CAPTCHA

Para CAPTCHAs de imagem, ajuste o nó Enviar:

Nome Valor
method base64
body Imagem codificada em Base64 (de um nó ou URL anterior)

Para converter um URL de imagem para base64 em n8n, adicione um nó Code antes de enviar:

const imageUrl = $input.first().json.imageUrl;
const resp = await fetch(imageUrl);
const buffer = Buffer.from(await resp.arrayBuffer());
const base64 = buffer.toString('base64');

return [{ json: { imageBase64: base64 } }];

Fluxo de trabalho de verificação de saldo

Crie um fluxo de trabalho separado que seja executado de acordo com uma programação:

Cron (daily at 9 AM)
    ↓
HTTP Request: GET res.php?action=getbalance
    ↓
IF: balance < 5
    ↓
Slack / Email: "CaptchaAI balance low: $X.XX"

n8n vs Zapier para resolução de CAPTCHA

Recurso n8n Zapier
Suporte Loop/retry Nativo (loops IF, nó Loop) Limitado (somente caminhos)
Opção auto-hospedada Sim (grátis) Não (somente nuvem)
Nós de código JavaScript completo Limitado
Custo Nuvem gratuita (auto-hospedada) ou paga Pago (por tarefa)
Facilidade de configuração Moderado Fácil

n8n é mais adequado para fluxos de trabalho CAPTCHA devido ao seu suporte a loop e nós de código.


Solução de problemas

Problema Causa Correção
O ciclo de pesquisa funciona para sempre Sem limite máximo de iteração Adicione uma variável de contador, interrompa após 24 iterações
CAPCHA_NOT_READY sem parar Tempo de espera muito curto antes da primeira votação Aumente a espera inicial para 15 a 20 segundos
Token não disponível no próximo nó Caminho de expressão errado Verifique se {{ $json.token }} corresponde à saída
Credenciais não encontradas Variável de ambiente não definida Reinicie o n8n depois de definir env vars

Perguntas frequentes

Posso processar vários CAPTCHAs em um fluxo de trabalho?

Sim. Use o nó Dividir em lotes para processar vários itens, cada um com seu próprio fluxo de envio → pesquisa → uso.

O n8n suporta catraca?

Sim. Mude method para turnstile e use sitekey em vez de googlekey.


Crie soluções CAPTCHA em seus fluxos de trabalho n8n

Obtenha sua chave API emcaptchaai.com.


Guias relacionados

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