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 Ausgabe – Warten (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:
- Gehen Sie zu Anmeldeinformationen → Anmeldeinformationen hinzufügen → Header-Authentifizierung
- Name:
CaptchaAI API Key - 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
- Zapier + CaptchaAI No-Code-Automatisierung
- CaptchaAI API-Schnellstart
- CaptchaAI Callback-URL/Webhook-Anleitung