Tutorials

n8n + CaptchaAI: Workflow zur CAPTCHA-Lösung ohne Code

n8n ist ein Open-Source-Workflow-Automatisierungstool mit nativer Loop-Unterstützung, wodurch es für die CAPTCHA-Lösung flexibler als Zapier ist. Sie können einen Workflow „Senden“, „Umfrage“ und „Verwenden“ erstellen, der den Vorgang automatisch wiederholt, bis die Lösung abgeschlossen ist.


Workflow-Übersicht

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

Knoten 1: CAPTCHA senden

Fügen Sie einen Knoten HTTP-Anfrage hinzu:

Einstellung Wert
Methode POST
URL https://ocr.captchaai.com/in.php
Typ des Körperinhalts Form URL Encoded

Körperparameter:

Name Wert
key {{ $credentials.captchaaiApiKey }} oder codieren Sie Ihren Schlüssel fest
method userrecaptcha
googlekey 6Le-SITEKEY
pageurl https://example.com
json 1

Antwort:

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

Knoten 2: Warten

Fügen Sie einen Warten-Knoten hinzu:

Einstellung Wert
Wartezeit 10
Einheit Seconds

Dies gibt dem Löser Zeit, mit der Verarbeitung vor der ersten Abfrage zu beginnen.


Knoten 3: Umfrageergebnis (mit Schleife)

n8n unterstützt Schleifen durch den Loop Over Items-Knoten oder durch Verbinden der falschen Ausgabe eines IF-Knotens zurück mit einem vorherigen Knoten.

Option A: Einfache IF-Schleife

Fügen Sie einen HTTP-Anfrage-Knoten hinzu (Umfrage):

Einstellung Wert
Methode GET
URL https://ocr.captchaai.com/res.php
Abfrageparameter key, action=get, id={{ $json.request }}, json=1

Verbinden Sie es mit einem IF-Knoten:

Zustand Wert
Wert 1 {{ $json.status }}
Betrieb Equal
Wert 2 1
  • Echte Ausgabe – Fahren Sie mit der nächsten Aktion fort (Token verwenden)
  • Falsche AusgabeWarten (5 Sekunden) – zurück zum Poll-Knoten

Option B: Codeknoten

Für mehr Kontrolle verwenden Sie einen Code-Knoten:

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`);

Knoten 4: Verwenden Sie den Token

Fügen Sie einen weiteren Knoten HTTP-Anfrage hinzu, um das Formular mit dem gelösten Token zu senden:

Einstellung Wert
Methode POST
URL https://target-site.com/submit
Typ des Körperinhalts Form URL Encoded

Zu den Körperparametern gehören Ihre Formulardaten sowie:

Name Wert
g-recaptcha-response {{ $json.token }}

Sichere Speicherung des API-Schlüssels

Verwenden Sie das Anmeldeinformationssystem von n8n:

  1. Gehen Sie zu Anmeldeinformationen → Anmeldeinformationen hinzufügen → Header-Authentifizierung
  2. Name: CaptchaAI API Key
  3. Bewahren Sie den Schlüssel sicher auf

Oder verwenden Sie Umgebungsvariablen:

# In your n8n environment
export CAPTCHAAI_API_KEY="your_key_here"

Referenz in Knoten: {{ $env.CAPTCHAAI_API_KEY }}


Bild-CAPTCHA-Workflow

Passen Sie für Bild-CAPTCHAs den Submit-Knoten an:

Name Wert
method base64
body Base64-codiertes Bild (von einem vorherigen Knoten oder einer vorherigen URL)

Um eine Bild-URL in n8n in Base64 zu konvertieren, fügen Sie vor dem Senden einen Code-Knoten hinzu:

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 } }];

Workflow für die Saldenüberprüfung

Erstellen Sie einen separaten Workflow, der nach einem Zeitplan ausgeführt wird:

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 zum Lösen von CAPTCHAs

Funktion n8n Zapier
Loop/retry-Unterstützung Nativ (IF-Schleifen, Schleifenknoten) Begrenzt (nur Pfade)
Selbstgehostete Option Ja (kostenlos) Nein (nur Cloud)
Codeknoten Vollständiges JavaScript Begrenzt
Kosten Kostenlose (selbst gehostete) oder kostenpflichtige Cloud Bezahlt (pro Aufgabe)
Einfache Einrichtung Mäßig Einfach

n8n ist aufgrund seiner Schleifenunterstützung und Code-Knoten besser für CAPTCHA-Workflows geeignet.


Fehlerbehebung

Problem Ursache Lösung
Die Umfrageschleife läuft ewig Kein maximales Iterationslimit Fügen Sie eine Zählervariable hinzu und unterbrechen Sie sie nach 24 Iterationen
CAPCHA_NOT_READY ununterbrochen Zu kurze Wartezeit vor der ersten Umfrage Erhöhen Sie die anfängliche Wartezeit auf 15–20 Sekunden
Token im nächsten Knoten nicht verfügbar Falscher Ausdruckspfad Überprüfen Sie, ob {{ $json.token }} mit der Ausgabe übereinstimmt
Anmeldeinformationen nicht gefunden Umgebungsvariable nicht festgelegt Starten Sie n8n neu, nachdem Sie die Umgebungsvariablen festgelegt haben

FAQ

Kann ich mehrere CAPTCHAs in einem Workflow verarbeiten?

Ja. Verwenden Sie den Knoten In Stapel aufteilen, um mehrere Elemente zu verarbeiten, jedes mit seinem eigenen Senden-, Umfrage- und Verwendungsablauf.

Unterstützt n8n Turnstile?

Ja. Ändern Sie method in turnstile und verwenden Sie sitekey anstelle von googlekey.


Integrieren Sie die CAPTCHA-Lösung in Ihre n8n-Workflows

Holen Sie sich Ihren API-Schlüssel untercaptchaai.com.


Verwandte Leitfäden

Kommentare sind für diesen Artikel deaktiviert.