logo
bars

Text-CAPTCHA (ImageToText)
und CapMonster Cloud

CAPTCHA-Lösung, Website-Integration und Tests.
Sie haben eine Website mit eingebauter Captcha- oder Bot-Schutzlösung übernommen, aber keinen Zugriff auf den Quellcode? Dann stellt sich schnell die Frage: Welche Lösung ist installiert, ist sie korrekt konfiguriert und wie lässt sie sich testen?

In diesem Artikel haben wir versucht, alle wichtigen Fragen zu beantworten. Der erste Schritt bei der Lösung der Aufgabe besteht darin festzustellen, welches Schutzsystem eingesetzt wird. Dazu können Sie die Liste beliebter Captchas und Anti-Bot-Schutzsysteme heranziehen, in der visuelle Beispiele und zentrale Merkmale aufgeführt sind, die Ihnen helfen, schnell zu erkennen, womit Sie es zu tun haben.

Wenn Sie feststellen, dass auf Ihrer Website ImageToText eingesetzt wird, besteht der nächste Schritt darin, seine Eigenschaften und Funktionsweise genauer zu untersuchen. Ebenfalls in diesem Artikel finden Sie eine Anleitung zur Integration von ImageToText, damit Sie vollständig verstehen, wie das System auf Ihrer Website arbeitet. So können Sie nicht nur den aktuellen Schutz besser einschätzen, sondern auch seine Wartung vorausschauend planen.

Was ist ImageToText CAPTCHA
Was ist ImageToText CAPTCHA
ImageToText CAPTCHA ist ein klassisches Website-Schutzsystem, das auf der Texterkennung aus Bildern basiert. Der Benutzer muss Zeichen (Buchstaben, Zahlen oder deren Kombination) eingeben, die auf einem verzerrten Bild dargestellt sind. Dieser Ansatz ermöglicht es, Menschen von automatisierten Skripten zu unterscheiden. Er wird zum Schutz von Registrierungs- und Login-Formularen, dem Versenden von Nachrichten, Kommentaren sowie zur Verhinderung massenhafter automatisierter Anfragen eingesetzt.

Wie man ImageToText CAPTCHA mit CapMonster Cloud löst

Beim Testen von Formularen mit ImageToText CAPTCHA ist es oft notwendig zu überprüfen, ob die CAPTCHA korrekt funktioniert und richtig integriert ist.
Sie können die auf Ihrer Website eingebundene CAPTCHA manuell testen:
  • Öffnen Sie die Seite mit dem Formular und stellen Sie sicher, dass die CAPTCHA angezeigt wird.
  • Versuchen Sie, das Formular ohne das Lösen der CAPTCHA abzusenden — der Server sollte einen Fehler zurückgeben.
  • Nach erfolgreicher Lösung der CAPTCHA sollte das Formular ohne Fehler gesendet werden.
Für die automatische CAPTCHA-Erkennung können Sie spezialisierte Dienste wie CapMonster Cloud verwenden — ein Tool, das CAPTCHA-Parameter entgegennimmt, sie auf eigenen Servern verarbeitet und eine fertige Lösung zurückgibt. Diese Antwort kann in das entsprechende Feld eingefügt werden, um die Prüfung ohne Benutzerbeteiligung zu bestehen.

Die Arbeit mit CapMonster Cloud über die API umfasst in der Regel folgende Schritte:

Aufgabe erstellenAufgabe erstellen
arrow
API-Anfrage sendenAPI-Anfrage senden
arrow
Ergebnis empfangenErgebnis empfangen
arrow
Token auf der Seite einsetzenToken auf der Seite einsetzen
arrow
Erkennung von Bild-CAPTCHAs mit fertigen Bibliotheken
Der Dienst CapMonster Cloud stellt fertige Bibliotheken für die komfortable Nutzung in Python, JavaScript (Node.js) und C# bereit.
Python
JavaScript
C#
Lösen, Einfügen der Antwort und Absenden des Formulars
Ein Node.js-Beispiel für den vollständigen CAPTCHA-Erkennungszyklus auf Ihrer Webseite. Mögliche Ansätze sind die Verwendung von HTTP-Anfragen zum Abrufen von HTML und Parametern des Schutzsystems, das Senden der Antwort und die Verarbeitung des Ergebnisses. Oder — wie im folgenden Beispiel — die Nutzung von Automatisierungstools (z. B. Playwright): Seite öffnen, auf die Prüfung warten, Parameter über den CapMonster-Cloud-Client senden, das Ergebnis abrufen, es in das entsprechende Feld einfügen (zu Testzwecken können sowohl korrekte als auch falsche Daten verwendet werden) und das Resultat beobachten.

  // npm install playwright @zennolab_com/capmonstercloud-client
  // npx playwright install chromium

import { CapMonsterCloudClientFactory, ClientOptions, ImageToTextRequest, CapMonsterModules } from '@zennolab_com/capmonstercloud-client';
import { chromium } from 'playwright';

const API_KEY = "YOUR_API_KEY"; // Geben Sie Ihren CapMonster-Cloud-API-Schlüssel an

async function solveImageToTextAndFillField() {
    const cmcClient = CapMonsterCloudClientFactory.Create(
        new ClientOptions({ clientKey: API_KEY })
    );

    // Optional können Sie Ihr Guthaben prüfen
    const balance = await cmcClient.getBalance();
    console.log("Balance:", balance);

    // 1. Playwright starten und die Seite mit dem Formular öffnen
    const browser = await chromium.launch({ headless: false });
    const context = await browser.newContext();
    const page = await context.newPage();
    await page.goto("https://example.com/form"); // 2. CAPTCHA-URL von der Seite abrufen (Beispiel über <img>-Selektor)

    // 2. CAPTCHA-URL von der Seite abrufen (Beispiel über <img>-Selektor)
    const captchaUrl = await page.getAttribute("#captcha-img", "src");

    // 3. Bild herunterladen und in Base64 konvertieren
    const response = await fetch(captchaUrl);
    const imageBuffer = await response.arrayBuffer();
    const imageBase64 = Buffer.from(imageBuffer).toString('base64');

    // 4. Eine Anfrage zum Lösen von ImageToText erstellen
    const imageToTextRequest = new ImageToTextRequest({
        body: imageBase64,
        CapMonsterModule: CapMonsterModules.YandexWave, // oder ein anderes Modul
        Case: true,
        numeric: 0,
        recognizingThreshold: 65,
        math: false
    });

    // 5. Die CAPTCHA-Lösung abrufen
    const result = await cmcClient.Solve(imageToTextRequest);
    console.log("Captcha solution:", result.solution.text);

    // 6. Die Lösung in das Formularfeld einfügen und absenden
    await page.fill("#captcha-input", result.solution.text); // Ersetzen Sie dies durch Ihren Selektor
    await page.click("#submit-button"); // Ersetzen Sie dies durch Ihren Button-Selektor
    await page.waitForLoadState("networkidle");

    console.log("Formular mit gelöster CAPTCHA gesendet");

    // 7. Browser schließen
    await browser.close();
}

solveImageToTextAndFillField().catch(console.error);


  
Wie man eine Text-CAPTCHA auf der eigenen Website integriert
Um sicher mit der Funktionsweise der CAPTCHA auf Ihrer Website umzugehen, die Prüfungslogik zu verstehen, sie neu zu verbinden oder zu konfigurieren, empfehlen wir, diesen Abschnitt zu lesen. Er beschreibt den Integrationsprozess des Schutzes und hilft, alle Nuancen schnell zu verstehen.

Schritt 1. Ansatz wählen

Zunächst müssen Sie entscheiden, wie Sie die CAPTCHA verwenden möchten:

Option 1 — Drittanbieter

Geeignet, wenn eine schnelle Implementierung und minimaler Wartungsaufwand wichtig sind.

Vorteile:

  • Schnelle Integration
  • Fertiger Bot-Schutz
  • Keine eigene Aktualisierung der Algorithmen erforderlich

Nachteile:

  • Abhängigkeit von einem externen Dienst
  • Eingeschränkte Anpassungsmöglichkeiten

Option 2 — Eigene Text-CAPTCHA

Geeignet, wenn volle Kontrolle und eine maßgeschneiderte Integration erforderlich sind.

Vorteile:

  • Volle Kontrolle über Logik und Design
  • Keine externen Abhängigkeiten
  • Anpassbar an spezifische Szenarien

Nachteile:

  • Bot-Schutz muss selbst implementiert werden
  • Erfordert Wartung und Weiterentwicklung im Laufe der Zeit

Schritt 2. CAPTCHA-Generierung implementieren

Für einen Anbieter

  • Registrieren Sie sich beim Dienst
  • Erhalten Sie Schlüssel (Site Key / Secret Key)
  • Binden Sie das Skript auf der Seite mit dem Formular ein

Für eine eigene CAPTCHA

  • Erzeugen Sie eine zufällige Zeichenfolge (Zahlen oder Buchstaben)
  • Rendern Sie diese als Bild (Canvas, SVG oder serverseitige Generierung)
  • Fügen Sie Verzerrungen hinzu: Rauschen, Linien, Zeichenrotation

Schritt 3. CAPTCHA dem Benutzer anzeigen

  • Platzieren Sie das CAPTCHA-Bild neben dem Formular
  • Fügen Sie ein Texteingabefeld hinzu
  • Implementieren Sie eine Schaltfläche zum Aktualisieren der CAPTCHA

Wichtig: Jeder Ladevorgang muss einen neuen Code erzeugen.

Schritt 4. Daten an den Server senden

Beim Absenden des Formulars senden Sie:

  • Den vom Benutzer eingegebenen Text
  • Eine CAPTCHA-ID oder ein Sitzungs-Token

Bei einer eigenen CAPTCHA darf der Code nicht auf dem Client gespeichert werden — nur auf dem Server.

Schritt 5. CAPTCHA auf dem Server prüfen

Anbieter

  • Senden Sie das CAPTCHA-Token an den Server des Anbieters
  • Erhalten Sie das Prüfergebnis (erfolgreich / Fehler)

Eigene CAPTCHA

  • Vergleichen Sie den eingegebenen Text mit dem gespeicherten Wert
  • Berücksichtigen Sie die Gültigkeitsdauer der CAPTCHA (z. B. 1–2 Minuten)

Schritt 6. Entscheidung treffen

  • Wenn die CAPTCHA bestanden ist — führen Sie die Aktion aus (Login, Registrierung, Formular absenden)
  • Wenn nicht — zeigen Sie einen Fehler an und generieren Sie eine neue CAPTCHA

Schritt 7. Schutz verstärken (empfohlen)

Auch für eine Text-CAPTCHA sollten Sie Folgendes hinzufügen:

  • Begrenzung der Anzahl der Versuche
  • Bindung an IP, Sitzung oder Cookies
  • Temporäre (Einmal-)Tokens
  • Protokollierung verdächtiger Aktivitäten
Background
Mögliche Fehler und Debugging
Bug Icon
Bild-CAPTCHA wird nicht geladen
(Leeres Bild, 404/500 oder Generierungsfehler) — meist verursacht durch eine fehlerhafte Generierungslogik. Stellen Sie sicher, dass der Server das Bild korrekt erstellt und an den Client zurückgibt und dass der Endpunkt korrekt angegeben ist.
Bug Icon
Ungültiger oder leerer CAPTCHA-Code
Prüfen Sie, ob die Benutzereingabe tatsächlich an den Server gesendet und mit dem gespeicherten CAPTCHA-Wert verglichen wird.
Bug Icon
Code stimmt trotz korrekter Eingabe nicht überein

Stellen Sie sicher, dass:

  • Die CAPTCHA nicht vor der Prüfung neu generiert wird;
  • Der Code getrennt für jede Sitzung oder jedes Token gespeichert wird;
  • Die CAPTCHA nicht abgelaufen ist.
Bug Icon
Abgelaufene CAPTCHA-Gültigkeitsdauer
Erhöhen Sie die TTL der CAPTCHA auf dem Server oder aktualisieren Sie sie bei erneuten Eingabeversuchen.
Tests der Schutzstabilität
Stellen Sie nach der Integration sicher, dass das System die Website wirklich vor automatisierten Aktionen schützt.
Tipps zu Sicherheit und Optimierung
Speichern Sie die korrekte CAPTCHA-Antwort nur auf dem <b>Server</b> (im Speicher, Redis oder einer Datenbank) und senden Sie sie nicht an den Client.
Verwenden Sie Einmal-Tokens oder CAPTCHA-IDs.
Begrenzen Sie die Anzahl der Eingabeversuche pro CAPTCHA.
Verwenden Sie immer HTTPS für die Übertragung von Formulardaten und CAPTCHA-Antworten.
Protokollieren Sie Fehler bei der Generierung und Prüfung der CAPTCHA (Zeit, IP, Ablehnungsgrund) — dies erleichtert Debugging und Angriffsanalyse.
Aktualisieren Sie regelmäßig den Generierungsalgorithmus (Schriftarten, Verzerrungen, Rauschen).
Fazit

Wenn Sie eine Website übernehmen, auf der bereits eine CAPTCHA oder ein anderes Schutzsystem installiert ist und Sie keinen Zugriff auf den Code haben — kein Problem! Es ist relativ einfach festzustellen, welche Technologie verwendet wird. Zur Überprüfung der korrekten Funktionsweise können Sie den Erkennungsdienst von CapMonster Cloud in einer isolierten Testumgebung nutzen, um sicherzustellen, dass die Token-Verarbeitung und die Validierungslogik korrekt funktionieren.

Im Fall einer bildbasierten CAPTCHA reicht es aus, das System zu identifizieren, sein Verhalten zu analysieren und sicherzustellen, dass der Schutz korrekt funktioniert. In diesem Artikel haben wir gezeigt, wie man eine Bild-CAPTCHA (ComplexImage) erkennt und wie man sie verbindet oder neu konfiguriert, um den Schutz zuverlässig zu warten und zu kontrollieren.

Conclusion
Nützliche Links
DocIconCapMonster Cloud Dokumentation (Arbeiten mit Text-CAPTCHA)DocIconLeitfaden: Eigene CAPTCHA erstellenDocIconRegistrierung bei CapMonster Cloud