logo
bars

Tekst CAPTCHA (ImageToText)
en CapMonster Cloud

CAPTCHA oplossen, integratie op de website en testen.
Heb je een site geërfd met een ingebouwde captcha of andere bescherming, maar zonder toegang tot de broncode? Dan wil je natuurlijk weten welke oplossing draait, of die goed is ingesteld en hoe je de werking test.

In dit artikel hebben we geprobeerd antwoord te geven op alle belangrijke vragen. De eerste stap bij het oplossen van het vraagstuk is vaststellen welk beveiligingssysteem wordt gebruikt. Daarvoor kun je de lijst met populaire captcha’s en anti-botbeveiligingssystemen raadplegen, met visuele voorbeelden en kernkenmerken die je helpen snel te bepalen waarmee je te maken hebt.

Als je ontdekt dat je website ImageToText gebruikt, is de volgende stap om de eigenschappen en werking ervan uitgebreider te bestuderen. In dit artikel vind je ook een handleiding voor het integreren van ImageToText, zodat je volledig begrijpt hoe het systeem op je website werkt. Zo kun je niet alleen de huidige bescherming beter doorgronden, maar ook het onderhoud ervan goed plannen.

Wat is ImageToText CAPTCHA
Wat is ImageToText CAPTCHA
ImageToText CAPTCHA is een klassiek systeem voor websitebeveiliging dat gebaseerd is op tekstherkenning uit afbeeldingen. De gebruiker moet de karakters (letters, cijfers of een combinatie daarvan) invoeren die in een vervormde afbeelding worden weergegeven. Deze methode helpt om mensen te onderscheiden van geautomatiseerde scripts. Het wordt gebruikt voor registratieformulieren, inloggen, berichten verzenden, reacties en om massale automatische verzoeken te voorkomen.

Hoe ImageToText CAPTCHA op te lossen via CapMonster Cloud

Bij het testen van formulieren met ImageToText CAPTCHA is het vaak nodig om te controleren of de CAPTCHA correct werkt en juist is geïntegreerd.
U kunt de CAPTCHA op uw website handmatig testen:
  • Open de pagina met het formulier en controleer of de CAPTCHA wordt weergegeven.
  • Probeer het formulier te verzenden zonder de CAPTCHA op te lossen — de server moet een foutmelding geven.
  • Na een succesvolle oplossing van de CAPTCHA moet het formulier zonder fouten worden verzonden.
Voor automatische herkenning van CAPTCHA kunt u gespecialiseerde diensten gebruiken, zoals CapMonster Cloud — een tool die de CAPTCHA-parameters ontvangt, deze op hun servers verwerkt en een kant-en-klaar antwoord terugstuurt. Dit antwoord kan in het juiste veld worden ingevoerd om de verificatie te voltooien zonder gebruikersinterventie.

Werken met CapMonster Cloud via de API bestaat doorgaans uit de volgende stappen:

Taak aanmakenTaak aanmaken
arrow
API-aanvraag versturenAPI-aanvraag versturen
arrow
Resultaat ontvangenResultaat ontvangen
arrow
Token op de pagina plaatsenToken op de pagina plaatsen
arrow
Afbeeldingscaptcha herkennen met kant-en-klare bibliotheken
CapMonster Cloud biedt kant-en-klare bibliotheken voor gebruik in Python, JavaScript (Node.js) en C#.
Python
JavaScript
C#
Oplossing verkrijgen, invullen en formulier verzenden
Voorbeeld in Node.js voor de volledige cyclus van CAPTCHA-herkenning op uw webpagina. Mogelijke benaderingen: gebruik HTTP-verzoeken om HTML en systeemparameters te verkrijgen, verzend de oplossing en verwerk het resultaat. Of, zoals in het onderstaande voorbeeld, met automatiseringstools (zoals Playwright) — open de pagina, wacht op verificatie, verzend parameters via de CapMonster Cloud-client, verkrijg het resultaat, plaats het in het juiste veld (voor testen kunt u correcte of incorrecte gegevens gebruiken) en observeer het resultaat.

  // 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"; // Voer uw CapMonster Cloud API-sleutel in

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

    // Controleer indien nodig het saldo
    const balance = await cmcClient.getBalance();
    console.log("Balance:", balance);

    // 1. Start Playwright en open de pagina met het formulier
    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. Verkrijg de CAPTCHA-URL van de pagina (voorbeeld via <img>-selector)

    // 2. Verkrijg de CAPTCHA-URL van de pagina (voorbeeld via <img>-selector)
    const captchaUrl = await page.getAttribute("#captcha-img", "src");

    // 3. Download de afbeelding en converteer naar Base64
    const response = await fetch(captchaUrl);
    const imageBuffer = await response.arrayBuffer();
    const imageBase64 = Buffer.from(imageBuffer).toString('base64');

    // 4. Maak een verzoek voor ImageToText-oplossing
    const imageToTextRequest = new ImageToTextRequest({
        body: imageBase64,
        CapMonsterModule: CapMonsterModules.YandexWave, // of een andere module
        Case: true,
        numeric: 0,
        recognizingThreshold: 65,
        math: false
    });

    // 5. Verkrijg de CAPTCHA-oplossing
    const result = await cmcClient.Solve(imageToTextRequest);
    console.log("Captcha solution:", result.solution.text);

    // 6. Plaats de oplossing in het formulierveld en verzend
    await page.fill("#captcha-input", result.solution.text); // Vervang door uw selector
    await page.click("#submit-button"); // Vervang door uw knopselector
    await page.waitForLoadState("networkidle");

    console.log("Formulier verzonden met CAPTCHA-oplossing");

    // 7. Sluit de browser
    await browser.close();
}

solveImageToTextAndFillField().catch(console.error);


  
Hoe een tekstcaptcha aan uw website te koppelen
Om de werking van CAPTCHA op uw website volledig te begrijpen, de verificatielogica te leren of opnieuw te configureren, raden we deze sectie aan. Hier wordt het proces van beveiligingsintegratie uitgelegd, zodat u alle details snel begrijpt.

Stap 1. Kies een aanpak

Bepaal eerst hoe u de CAPTCHA wilt gebruiken:

Optie 1 — externe leverancier

Geschikt als u snelle implementatie en minimale ondersteuning nodig heeft.

Voordelen:

  • Snelle integratie
  • Klaar voor gebruik botbescherming
  • Geen handmatige algoritme-updates nodig

Nadelen:

  • Afhankelijkheid van externe service
  • Beperkte aanpassingsmogelijkheden

Optie 2 — aangepaste tekst CAPTCHA

Geschikt als volledige controle en integratie nodig is.

Voordelen:

  • Volledige controle over logica en ontwerp
  • Geen externe afhankelijkheid
  • Kan worden aangepast aan specifieke scenario’s

Nadelen:

  • U moet zelf botbescherming implementeren
  • Onderhoud en verbeteringen zijn op termijn nodig

Stap 2. Implementeer CAPTCHA-generatie

Voor leverancier

  • Registreer bij de service
  • Verkrijg sleutels (site key / secret key)
  • Integreer het script op de formulierpagina

Voor aangepaste CAPTCHA

  • Genereer een willekeurige tekenreeks (cijfers of letters)
  • Teken deze op een afbeelding (Canvas, SVG of server-side generatie)
  • Voeg vervormingen toe: ruis, lijnen, rotatie van karakters

Stap 3. Toon de CAPTCHA aan de gebruiker

  • Plaats de CAPTCHA-afbeelding naast het formulier
  • Voeg een tekstinvoerveld toe
  • Implementeer een knop om de CAPTCHA te vernieuwen

Belangrijk: elke keer dat de pagina wordt geladen, moet een nieuwe code worden gegenereerd.

Stap 4. Verstuur gegevens naar de server

Bij het verzenden van het formulier, verzend:

  • De door de gebruiker ingevoerde tekst
  • CAPTCHA-id of sessietoken

Voor aangepaste CAPTCHA mag de code niet op de client worden opgeslagen — alleen op de server.

Stap 5. Controleer de CAPTCHA op de server

Leverancier

  • Verzend het CAPTCHA-token naar de servers van de leverancier
  • Ontvang het verificatieresultaat (succes / fout)

Aangepaste CAPTCHA

  • Vergelijk de ingevoerde tekst met de opgeslagen waarde
  • Houd rekening met de geldigheidstermijn van de CAPTCHA (bijv. 1–2 minuten)

Stap 6. Neem een beslissing

  • Als de CAPTCHA is geslaagd — voer de actie uit (login, registratie, formulier verzenden)
  • Als dit niet het geval is — toon een foutmelding en genereer een nieuwe CAPTCHA

Stap 7. Versterk de beveiliging (aanbevolen)

Zelfs voor tekst-CAPTCHA wordt aanbevolen om toe te voegen:

  • Beperking van het aantal pogingen
  • Koppeling aan IP, sessie of cookie
  • Tijdelijke (eenmalige) tokens
  • Log verdachte activiteiten
Background
Mogelijke fouten en debugging
Bug Icon
Afbeeldings-CAPTCHA laadt niet
(Lege afbeelding, 404/500 of generatiefout) — meestal veroorzaakt door foutieve generatielogica. Zorg ervoor dat de server de afbeelding correct genereert en naar de client verzendt, en dat het endpoint-pad correct is.
Bug Icon
Ongeldige of lege CAPTCHA-code
Controleer of de gebruikersinvoer correct naar de server wordt verzonden en vergeleken met de opgeslagen CAPTCHA-waarde.
Bug Icon
Codes komen niet overeen ondanks correcte invoer

Controleer dat:

  • De CAPTCHA niet wordt hergegenereerd voor verificatie;
  • De code afzonderlijk wordt opgeslagen voor elke sessie of token;
  • De CAPTCHA nog niet is verlopen.
Bug Icon
CAPTCHA is verlopen
Verhoog de TTL van de CAPTCHA op de server of werk deze bij bij herhaalde pogingen.
Controle van de robuustheid
Controleer na de integratie of het systeem de site echt beschermt tegen geautomatiseerde acties.
Aanbevelingen voor veiligheid en optimalisatie
Sla het juiste CAPTCHA-antwoord alleen op de <b>server</b> op (geheugen, Redis of DB), niet aan de client doorgeven.
Gebruik eenmalige tokens of CAPTCHA-identificatoren.
Beperk het aantal pogingen per CAPTCHA.
Gebruik altijd HTTPS voor het verzenden van formuliergegevens en CAPTCHA-antwoorden.
Log fouten bij generatie en verificatie van CAPTCHA (tijd, IP, reden) — vergemakkelijkt debugging en aanvalsanalyse.
Werk het generatie-algoritme regelmatig bij (lettertypen, vervorming, ruis).
Conclusie

Als u een website heeft met een reeds geïnstalleerde CAPTCHA of een ander beveiligingssysteem en geen toegang heeft tot de code, is dat geen probleem! Het is vrij eenvoudig om te bepalen welke technologie wordt gebruikt. Voor controle van de correcte werking kunt u de CapMonster Cloud-herkenningsservice in een geïsoleerde testomgeving gebruiken om te verifiëren dat de tokenverwerking en verificatielogica correct werken.

Voor een afbeeldings-CAPTCHA volstaat het om het systeem te identificeren, het gedrag te bestuderen en te controleren dat de bescherming correct functioneert. In dit artikel hebben we laten zien hoe u een afbeeldings-CAPTCHA (ComplexImage) kunt identificeren en hoe u deze kunt aansluiten of opnieuw configureren om de bescherming veilig te onderhouden en te controleren.

Conclusion
Handige links
DocIconCapMonster Cloud-documentatie (werken met tekst-CAPTCHA)DocIconHandleiding: maak uw eigen CAPTCHADocIconRegistratie bij CapMonster Cloud