Puppeteer

Puppeteer-Captcha-Löser für Node.js und puppeteer-extra

Behalten Sie puppeteer-extra-plugin-recaptcha, wie es ist, oder rufen Sie den capskip-npm-Client per await auf, und Headless Chrome erhält eine Antwort für reCAPTCHA, Turnstile, GeeTest v3 oder ein verzerrtes Textbild, gelöst auf Ihrem eigenen PC ohne Zähler pro Seite.

Windows x64·Läuft lokal, sodass kein Captcha Ihren Rechner verlässt
  • Bereit für puppeteer-extra
  • Promise-basierter npm-Client
  • Headless-Läufe ohne Zähler
Captchas pro Monat40,000
40.0k250.0k
Anderswo abgerechnet, ca. $1.40 pro 1.000$56.00
CapSkip Bronze, pauschal$35.00
$21.00bleibt in Ihrer Taschejeden Monat, bei diesem Volumen

Wenn Headless Chrome auf ein reCAPTCHA, eine Turnstile-Box oder ein verzerrtes Bild trifft, arbeitet CapSkip als Puppeteer-Captcha-Solver neben Ihrem Node.js-Crawler. Es läuft auf demselben Windows-PC oder VPS und gibt dem Skript eine Antwort zum Einfügen, statt eines Tabs, der in einen Timeout läuft. Puppeteer kann überall klicken und tippen, aber kein gültiges Token selbst erzeugen. Diesen Teil übernimmt die CapSkip-App mit einer Pauschallizenz und unbegrenzten Lösungen, was zu einem Browser passt, der in einem einzigen Crawl Hunderte Tabs öffnen kann.

Wie tief die Integration geht, entscheiden Sie. Ein Projekt, das bereits puppeteer-extra-plugin-recaptcha nutzt, kann unverändert bleiben und wird trotzdem von CapSkip beantwortet, über den 2Captcha-Emulator. Neuer Code kann npm install capskip ausführen und solver.recaptcha() oder solver.turnstile() direkt per await aufrufen, mit TypeScript-Typen ab Werk.

Die Abdeckung reicht weiter als das, wonach das Plugin sucht. reCAPTCHA v2, v3 und Enterprise sind dabei, Turnstile sowohl als Widget als auch als vollständige Challenge-Seite, dazu GeeTest-v3-Slider, CaptchaFox, Capy Puzzle, AWS WAF CAPTCHA, das Proof-of-Work-Duo ALTCHA und Friendly Captcha sowie Tausende Bild-Captcha-Stile, die jeweils in etwa 0,1 Sekunden gelesen werden. Auch hCaptcha ist dabei. GeeTest v4 und FunCaptcha bleiben außen vor. Stealth-Plugins helfen weiterhin, indem sie Challenges seltener machen; CapSkip löst die, die trotzdem durchrutschen.

Ihr puppeteer-extra-Setup bleibt genau so, wie es geschrieben ist. Das recaptcha-Plugin behält seinen 2captcha-Provider und seine page.solveRecaptchas()-Aufrufe. Sobald in der CapSkip-App der 2Captcha-Emulator aktiviert und in die Hosts-Datei eingetragen ist, werden diese Aufrufe von dem Rechner beantwortet, auf dem Chrome läuft, statt von einem Prepaid-Guthaben. Zur Schritt-für-Schritt-Anleitung

Was der Puppeteer-Captcha-Solver Headless Chrome hinzufügt

Drop-in für puppeteer-extra-plugin-recaptcha

Das Plugin behält seine Provider-ID und jeden page.solveRecaptchas()-Aufruf. Mit dem 2Captcha-Emulator im Hosts-Datei-Modus enden seine Anfragen auf Ihrem eigenen PC, und kein Guthaben schrumpft.

Eine Methode pro Captcha-Typ, per await

Führen Sie npm install capskip aus, erstellen Sie einen Client und rufen Sie dann recaptcha(), turnstile(), geetest() oder normal() per await auf. Jede Methode liefert result.code, und die TypeScript-Definitionen sind im Paket enthalten.

Turnstile-Seiten mit dem richtigen User-Agent

solver.turnstile() deckt das eingebettete Widget ebenso ab wie die ganzseitige Cloudflare-Prüfung. Für die Seite liefert es außerdem den userAgent, zu dem das Token gehört, und den übernehmen Sie mit page.setUserAgent.

Erweiterung im Chrome, das Sie starten

Laden Sie die CapSkip-Erweiterung in die Chrome-Instanz, die Puppeteer startet, im Fenster oder im neueren Headless-Modus, und Widgets werden direkt in der Seite gelöst, ohne eine einzige Zeile Token-Code.

Viele Tabs, keine Lösungswarteschlange

Starten Sie eine Lösung pro Seite und sammeln Sie sie mit Promise.all ein. Ohne Rate-Limit pro Key und mit unbegrenzten Threads bestimmen Ihre CPU und Ihr Arbeitsspeicher den Durchsatz, nicht eine Anbieterstufe.

Wiederholungen landen nie auf der Rechnung

Bronze, für $35 im Monat für einen Rechner, enthält unbegrenzte Lösungen. Ein Crawl, der eine Seite zehnmal neu lädt, oder eine Testsuite, die über Nacht in Schleife läuft, kostet genau dasselbe.

Drei Wege, CapSkip mit Puppeteer zu verbinden

JavaScript
const puppeteer = require('puppeteer');
const { CapSkip } = require('capskip');

const solver = new CapSkip({ host: '127.0.0.1', port: 8080 });

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('https://example.com/login');

  const sitekey = await page.$eval('.g-recaptcha', el => el.dataset.sitekey);
  const { code } = await solver.recaptcha(sitekey, page.url());

  await page.evaluate(t => {
    document.getElementById('g-recaptcha-response').innerHTML = t;
  }, code);
  await page.click('button[type=submit]');
})();

Puppeteer liest den Sitekey, solver.recaptcha() aus dem capskip-Paket liefert ein Token, und page.evaluate setzt es vor dem Klick auf Absenden ein.

Erweiterung im gestarteten Browser

Installieren Sie bei laufender App die CapSkip-Erweiterung in dem Browser, den Puppeteer öffnet, und Challenges lösen sich von selbst, während Ihr Skript auf den nächsten Selektor wartet. Es gibt Versionen für Chrome und Firefox.

Der capskip-npm-Client

Ein Promise-basierter Node.js-Client mit TypeScript-Typen. Warten Sie pro Seite per await auf ein Token oder einen Text und schreiben Sie ihn mit page.evaluate ein. Clients für Python, PHP und C# gibt es ebenfalls.

Emulierte 2Captcha-API für alten Code

puppeteer-extra-plugin-recaptcha und andere Clients im 2Captcha-Stil senden weiter dieselben Anfragen, und die lokale API beantwortet sie auf Ihrem Rechner, bestehender Node-Code braucht also keine Änderungen.

Auf einer gehosteten reCAPTCHA-Seite ausprobieren

Richten Sie ein Puppeteer-Testskript oder Chrome mit der Erweiterung auf unsere Live-Demo für reCAPTCHA v2 und sehen Sie zu, wie ein Token zurückkommt, bevor Sie denselben Code auf ein echtes Ziel loslassen.

Machen Sie Ihr Puppeteer-Projekt bereit für Captchas

  1. App neben Chrome installieren

    Richten Sie CapSkip auf dem Windows-Rechner oder VPS ein, auf dem Ihre Puppeteer-Skripte laufen, und lassen Sie es geöffnet. Ein Rechner für beides ist am einfachsten, und der Hosts-Datei-Weg setzt das voraus. Den Installer herunterladen

  2. Tarif oder Testversion aktivieren

    Wählen Sie einen Monatstarif oder die kostenlose Testversion (500 Lösungen über 3 Tage) und melden Sie sich dann mit den Zugangsdaten, die in Ihrem Postfach landen, bei CapSkip an. Tarife vergleichen

  3. Aus Ihrem Puppeteer-Code aufrufen

    Führen Sie npm install capskip für direkte Aufrufe aus oder aktivieren Sie den 2Captcha-Emulator im Hosts-Datei-Modus, damit puppeteer-extra weiter funktioniert, und lassen Sie das Skript dann gegen eine echte Seite laufen. Zum Node.js-SDK

Captchas in Puppeteer lösen, lokal oder pro Aufruf bezahlt

Beide Seiten lassen sich in denselben Puppeteer-Code einbinden. Die Zeilen zeigen, was sich unterscheidet, sobald eine Challenge Ihr Skript verlässt.

FunktionCapSkip2Captcha & API-Dienste
Wie Sie bezahlenAb $35 im Monat, ohne Einrichtungsgebühr, Lösungen nie gezähltPrepaid-Guthaben pro tausend Lösungen, Kosten wachsen mit der Seitenzahl
Wo gelöst wirdIn CapSkip, auf dem Computer, auf dem Ihr Crawler läuftEine entfernte API oder eine menschliche Lösefarm
Anbindung an Node.jsnpm-Client, Browsererweiterung oder die lokale APIAPI-Key plus Anbieter-Client oder puppeteer-extra
puppeteer-extra-plugin-recaptchaLäuft weiter, lokal über den 2Captcha-Emulator beantwortetFunktioniert, aber jedes Token geht von einem bezahlten Guthaben ab
Bearbeitungszeit für Bild-CaptchasEtwa 0,1 Sekunden, beantwortet auf demselben RechnerUpload, Warteschlange und Polling für jedes Bild
Parallele TabsKein Thread-Limit; Ihre Hardware bestimmt das TempoParallelitätsgrenzen oder ein teurerer Tarif
Challenge-DatenBleibt auf dem Rechner, auf dem Chrome läuftGeht bei jeder Lösung an einen Drittanbieter

Preise

Schluss mit der Abrechnung pro Lösung

Wählen Sie Ihre Lizenz

Bronze-Lizenz

$35/ Monat

Bronze abonnieren

Sofortige Lizenzaktivierung

Monatliche Abrechnung. Kündigen Sie jederzeit in Ihrem Konto.

Gleiche Funktionen. Mehr Rechner, mehr Durchsatz.

Jeder Rechner löst so schnell, wie es seine CPU und sein Arbeitsspeicher erlauben. Mehr Rechner bedeuten mehr gleichzeitige Threads: Silver löst doppelt so viele Captchas gleichzeitig, Gold dreimal so viele.

  • Unbegrenztes Lösen, kein Tageslimit
  • Unbegrenzte Threads, die Geschwindigkeit skaliert mit Ihrer Hardware
  • 90% bis 100% Erkennungsgenauigkeit
  • Direkter Ersatz für die APIs der großen Lösungsdienste
  • Funktioniert mit fast jedem Tool, ohne Programmieren
  • REST-API, SDKs und eine Browser-Erweiterung
  • Kostenloses Training, wenn ein neuer Captcha-Typ auftaucht
  • Läuft auf Ihrem Rechner, nichts verlässt ihn

Jeder oben gezeigte Captcha-Typ ist in jeder Lizenz enthalten. Zur Übersicht der Typen

Möchten Sie es erst ausprobieren?

Starten Sie mit einem kostenlosen 3-tägigen Test und lösen Sie 500 Captchas beliebigen Typs auf Ihren eigenen Zielen.

Starten Sie den kostenlosen Test

reCAPTCHA in Puppeteer lösen: Plugin-Weg oder SDK-Weg

Puppeteer bietet Ihnen zwei verlässliche Wege, reCAPTCHA mit CapSkip zu lösen. Der Plugin-Weg nutzt puppeteer-extra-plugin-recaptcha unverändert weiter. Beim SDK-Weg rufen Sie das npm-Paket capskip selbst auf, und er erreicht auch Turnstile, GeeTest v3 und Bild-Captchas, nach denen das Plugin nie sucht.

Plugin-Weg. Öffnen Sie die CapSkip-App, schalten Sie den 2Captcha-Emulator ein und klicken Sie dann auf Add to hosts file. Damit wird 2captcha.com nur für diesen einen Computer auf CapSkip umgeleitet, der Node-Prozess mit Puppeteer muss also auf demselben Rechner laufen wie die App. Registrieren Sie das Plugin wie gewohnt, mit der Provider-ID 2captcha und im Feld token einem Key aus den CapSkip-Einstellungen (bei deaktivierter Key-Prüfung wird jeder Text akzeptiert). Nach jeder Navigation findet page.solveRecaptchas() die Widgets, schickt sie an das, was es weiterhin für 2Captcha hält, und füllt die Tokens ein, die CapSkip zurückgibt.

SDK-Weg. Erstellen Sie nach npm install capskip einen einzigen Client für 127.0.0.1 auf Port 8080, wo eine frische CapSkip-Installation lauscht. Lesen Sie den Sitekey mit page.$eval aus und rufen Sie dann solver.recaptcha(sitekey, page.url()) per await auf. Ein Invisible-Widget bekommt invisible: 1, und reCAPTCHA v3 bekommt version v3 plus die action, die die Seite verwendet.

Schließen Sie alles innerhalb von zwei Minuten ab, denn das Token läuft ab. Schreiben Sie result.code mit page.evaluate in die Textarea g-recaptcha-response, lösen Sie den Widget-Callback aus, falls einer deklariert ist, und senden Sie ab. Turnstile folgt genau demselben Muster mit solver.turnstile() und dem Feld cf-turnstile-response. Für ein Bild-Captcha erstellen Sie einen Screenshot des Elements in Base64 und übergeben ihn als data:image/png;base64-String an solver.normal().

Weitere Anleitungen: Node.js-Captcha-Löser · reCAPTCHA v2 in Node.js · 2Captcha-API-Alternative

Wie sieht eine reCAPTCHA-Lösung in einem Puppeteer-Skript aus?
Drei Schritte mit await und dem capskip-npm-Client: page.$eval liest den Wert data-sitekey, solver.recaptcha(sitekey, page.url()) liefert das Token, und page.evaluate schreibt result.code in g-recaptcha-response, bevor Sie auf Absenden klicken. In einem puppeteer-extra-Projekt erledigt ein einziger page.solveRecaptchas()-Aufruf dieselbe Arbeit.
Kann puppeteer-extra-plugin-recaptcha seine Arbeit an CapSkip übergeben?
Ja, ohne es zu bearbeiten. Behalten Sie die Provider-ID 2captcha, aktivieren Sie dann in der CapSkip-App die 2Captcha-Emulation und nutzen Sie die Schaltfläche Add neben Hosts file. Anfragen, die das Plugin an 2captcha.com stellt, landen dann auf diesem Computer bei CapSkip, führen Sie das Skript also auf demselben PC oder VPS aus wie die App.
Braucht das Plugin weiterhin ein aufgeladenes 2Captcha-Konto?
Weder Konto noch Guthaben. Das Plugin erwartet weiterhin einen Wert in seinem token-Feld, fügen Sie also den API-Key aus den CapSkip-Einstellungen ein, oder bei deaktivierter Key-Prüfung einen beliebigen String. Pro Aufruf wird nichts berechnet, denn die Anfragen verlassen Ihren Rechner nie.
Warum bleiben nach page.solveRecaptchas() manche Challenges übrig?
Diese Methode sucht nur nach reCAPTCHA- und hCaptcha-Widgets, und CapSkip beantwortet beide über seine 2Captcha-Emulation. Alles andere auf der Seite, etwa Turnstile, ein GeeTest-v3-Slider, ALTCHA oder ein Bild-Captcha, ist für das Plugin unsichtbar. Erledigen Sie es also mit dem capskip-SDK im selben Skript, direkt neben dem Plugin-Aufruf.
Kommt Puppeteer an der ganzseitigen Cloudflare-Prüfung vorbei?
Ja. Für ein in ein Formular eingebettetes Widget übergeben Sie solver.turnstile() den Sitekey und die aktuelle URL und füllen dann cf-turnstile-response. Die ganzseitige Prüfung braucht zusätzlich die Strings data und pagedata, die die Challenge bereitstellt. Ihr Ergebnis enthält den userAgent, unter dem das Token ausgestellt wurde, wechseln Sie also vor dem Absenden mit page.setUserAgent zu ihm.
Reicht puppeteer-extra-plugin-stealth, um Captchas zu vermeiden?
Es senkt, wie oft sie auftauchen, nicht ob sie auftauchen können. Stealth-Patches verbergen die Signale, die Headless Chrome als automatisiert kennzeichnen, doch eine Website kann trotzdem eine Challenge ausliefern, und die braucht eine echte Antwort. Nutzen Sie Stealth für weniger Abfragen und CapSkip für die Abfragen, die übrig bleiben.
Was ändert sich bei reCAPTCHA v3 in Puppeteer?
Es gibt kein Widget zum Ausfüllen, nur einen Score. Rufen Sie solver.recaptcha() mit version auf v3 und dem action-String auf, den die Website an grecaptcha.execute übergibt, und senden Sie das Token dann mit der Anfrage, die die Seite stellen würde. Google bewertet v3-Tokens nach IP-Reputation und Browsersignalen, und ein sauberer Proxy ist wichtig, wenn eine Website einen hohen Score verlangt.
Kann die CapSkip-Erweiterung in Headless-Puppeteer laufen?
Ja, im neuen Headless-Modus von Chrome, der seit Puppeteer 22 Standard ist, und mit sichtbarem Fenster. Die alte Headless-Shell unterstützt überhaupt keine Erweiterungen. In beiden Fällen braucht die Erweiterung die laufende CapSkip-App. Das SDK und der puppeteer-extra-Weg haben keine solche Grenze, da keiner von beiden den Browser das Lösen erledigen lässt.

Geben Sie jedem Puppeteer-Lauf einen Weg am Captcha vorbei

Installieren Sie CapSkip neben Ihrem Node.js-Projekt, behalten Sie Ihr bisheriges Plugin oder ergänzen Sie den npm-Client, und die nächste Challenge kostet einen einzigen await-Aufruf statt eines hängenden Tabs, zum selben Monatspreis.