

Möchten Sie Bot-Erkennungssysteme umgehen und gleichzeitig automatisieren Chrome? Das puppeteer-extra-plugin-stealth
ist ein Tool, das dabei hilft, AutomatisierungsfingerabdrĂŒcke zu verbergen, sodass Websites Bots schwerer erkennen können.
navigator.webdriver
) und ahmt das echte Browserverhalten nach.Puppeteer
, puppeteer-extra
und das Stealth-Plugin ĂŒber npm or Garn. Verwenden Sie das Stealth-Plugin, um Ihren Browser so zu konfigurieren, dass er sich wie ein echter Benutzer verhĂ€lt.import puppeteer from 'puppeteer-extra';
import StealthPlugin from 'puppeteer-extra-plugin-stealth';
puppeteer.use(StealthPlugin());
(async () => {
const browser = await puppeteer.launch({ headless: true });
const page = await browser.newPage();
await page.goto('https://bot.sannysoft.com');
await browser.close();
})();
Dieses Tool eignet sich perfekt fĂŒr die Automatisierung von Aufgaben auf Websites mit strenger Bot-Erkennung. Erfahren Sie, wie Sie es einrichten, seine Einstellungen optimieren und menschenĂ€hnliches Verhalten simulieren, um unentdeckt zu bleiben.
ZunĂ€chst mĂŒssen Sie die erforderlichen Pakete installieren und so konfigurieren, dass die Erkennung wĂ€hrend der Automatisierung minimiert wird. Dieser Abschnitt behandelt den Installationsprozess, die Ersteinrichtung und die Tests, um sicherzustellen, dass alles wie vorgesehen funktioniert.
Zuerst installieren Puppenspieler, Puppenspieler Extraund dem Stealth-Plugin. Ăffnen Sie Ihr Terminal und fĂŒhren Sie den folgenden Befehl aus:
npm install puppeteer puppeteer-extra puppeteer-extra-plugin-stealth
Wenn Sie Yarn verwenden, verwenden Sie stattdessen diesen Befehl:
yarn add puppeteer puppeteer-extra puppeteer-extra-plugin-stealth
Nach der Installation richten Sie Ihre JavaScript-Datei so ein, dass das Stealth-Plugin integriert wird. Hier ist der Code, den Sie benötigen:
import puppeteer from 'puppeteer-extra';
import StealthPlugin from 'puppeteer-extra-plugin-stealth';
puppeteer.use(StealthPlugin());
(async () => {
const browser = await puppeteer.launch({ headless: true });
const page = await browser.newPage();
await page.goto('https://nowsecure.nl/');
await browser.close();
})();
Wichtig: Stellen Sie sicher, dass Sie Puppeteer importieren von 'puppeteer-extra'
statt 'puppeteer'
um auf die zusÀtzlichen Funktionen zuzugreifen [2].
Nachdem Sie die Einrichtung abgeschlossen haben, ist es an der Zeit zu ĂŒberprĂŒfen, ob alles ordnungsgemÀà funktioniert.
FĂŒhren Sie diese Tests aus, um zu bestĂ€tigen, dass Ihr Setup wie erwartet funktioniert:
FĂŒr eine schnelle ĂberprĂŒfung verwenden Sie das folgende Skript:
(async () => {
const browser = await puppeteer.launch({ headless: true });
const page = await browser.newPage();
await page.goto('https://bot.sannysoft.com');
await page.waitForTimeout(5000);
await page.screenshot({ path: 'stealth-test.png' });
await browser.close();
})();
Dieses Skript erstellt einen Screenshot der Testseite. ĂberprĂŒfen Sie anhand des Screenshots, ob sich Ihr Browser wie ein normaler Chrome-Browser verhĂ€lt und keine Anzeichen von Automatisierung aufweist.
Sobald Ihr Setup diese Tests bestanden hat, können Sie in die erweiterten Funktionen des Plugins eintauchen, die im nÀchsten Abschnitt behandelt werden.
Das puppeteer-extra-plugin-stealth
verwendet verschiedene Techniken, um das automatisierte Surfen schwerer erkennbar zu machen.
Das Plugin optimiert wichtige Browsereigenschaften, um einen typischen Chrome-Browser nachzuahmen. Dazu gehören:
HeadlessChrome
User-Agent mit einem natĂŒrlicherenAccept-Language
Ăberschriftennavigator.vendor
um dem Standardverhalten von Chrome zu entsprechenDiese Ănderungen tragen dazu bei, ein Browserprofil zu erstellen, das wie das eines normalen Benutzers aussieht und nicht wie das eines Bots. DarĂŒber hinaus verwendet das Plugin Anti-Fingerprinting-Techniken, um das Erkennungsrisiko weiter zu reduzieren.
Merkmal | Methodik | Zweck |
---|---|---|
Prozessoremulation | Begrenzt logische Prozessoren auf 4 | Imitiert typische Benutzerhardware |
Plugin-Emulation | Verspottet navigator.mimeTypes und Plugins |
Imitiert die StandardfunktionalitÀt von Chrome |
Fenstereigenschaften | FĂŒgt outerWidth sowie outerHeight |
SchlieĂt die Browsersimulation ab |
Anbietereigenschaften | Optimiert die Google-Kennung von Chrome | Hilft, die Erkennung durch Automatisierung zu vermeiden |
Diese Methoden stellen sicher, dass sich der Browser so verhÀlt, wie es die Websites von echten Benutzern erwarten.
Um die Automatisierung weiter zu verschleiern, entfernt oder Àndert das Plugin verrÀterische Anzeichen von Bot-AktivitÀt:
navigator.webdriver
Resortschrome.app
sowie chrome.csi
Objekte, die in regulÀren Chrome-Browsern vorhanden sindsourceurl
Attribut in Puppeteer-Skriptenpermissions
Eigenschaften, die dem natĂŒrlichen Browserverhalten entsprechenDas Plugin trĂ€gt auĂerdem dazu bei, CAPTCHA-Herausforderungen zu reduzieren, indem es ein konsistentes Browserverhalten gewĂ€hrleistet und Sitzungen effektiv verwaltet. Dadurch entsteht ein Browsing-Muster, das menschlicher AktivitĂ€t entspricht und die meisten Bot-Erkennungstests auf Plattformen wie sannysoft.com umgeht. [2]. Fortschrittliche Anti-Bot-Systeme, wie sie beispielsweise von Cloudflare, kann in einigen FĂ€llen immer noch Automatisierung erkennen [1].
Durch die benutzerdefinierte Konfiguration können Sie Stealth-Einstellungen und Browserverhalten optimieren und so einer Erkennung wirksamer entgehen.
Puppeteer Stealth ermöglicht Ihnen die Verwaltung der Ausweichmodule fĂŒr bestimmte Websites. Sie können Module nach Bedarf aktivieren oder deaktivieren:
const StealthPlugin = require('puppeteer-extra-plugin-stealth')
const stealth = StealthPlugin({
webglVendor: "Google Inc. (Intel)",
webglRenderer: "Intel Iris OpenGL Engine",
navigator: {
platform: "MacIntel",
languages: ["en-US", "en"]
}
})
Nach dem Einrichten von Stealth-Modulen können Sie das Browserverhalten anpassen, um die tatsÀchliche BenutzeraktivitÀt besser zu imitieren.
Optimieren Sie die Browserparameter, um ein authentisches Browsererlebnis zu simulieren:
Kategorie | Optionen | Zweck |
---|---|---|
BenutzeridentitÀt | User-Agent, Plattform, Sprachen | Schafft eine konsistente BrowseridentitÀt |
Hardwareprofil | WebGL-Anbieter, Bildschirmabmessungen | Imitiert tatsÀchliche GerÀteeigenschaften |
Laufzeitumgebung | Chrome-Laufzeitobjekte, Navigator-Eigenschaften | Emuliert normales Browserverhalten |
FĂŒhren Sie natĂŒrliche Verzögerungen zwischen Aktionen ein, um die Automatisierung weniger erkennbar zu machen:
const randomDelay = (min, max) => {
return Math.floor(Math.random() * (max - min + 1) + min);
}
await page.waitForTimeout(randomDelay(1000, 3000));
Durch das HinzufĂŒgen dieser Verzögerungen kann Ihre Automatisierung menschliches Verhalten nachahmen.
Die Verwendung von Proxys beim Browserstart erhöht die AnonymitÀt:
const browser = await puppeteer.launch({
args: [
`--proxy-server=http://proxy.example.com:8080`,
'--disable-features=IsolateOrigins,site-per-process'
]
});
âEs ist wahrscheinlich unmöglich, alle Möglichkeiten zur Erkennung von Headless-Chromium zu verhindern, aber es sollte möglich sein, es so schwierig zu machen, dass es unerschwinglich wird oder zu viele Fehlalarme auslöst, um praktikabel zu sein.â â TiZho, GitHub-Mitwirkender [3]
Rotieren Sie Proxys und richten Sie automatisches Failover ein, um eine zuverlÀssige KonnektivitÀt aufrechtzuerhalten. Diese Konfigurationen minimieren Erkennungsrisiken und gewÀhrleisten gleichzeitig eine stabile Leistung.
Um automatisierte Sitzungen unter dem Radar zu halten, sind sorgfĂ€ltige Planung und AusfĂŒhrung entscheidend.
Simulieren Sie realistisches Surfen, indem Sie zufĂ€llige Verzögerungen und Aktionen hinzufĂŒgen:
async function emulateHumanBehavior(page) {
// Random scrolling behavior
await page.evaluate(() => {
window.scrollBy({
top: Math.random() * 500,
behavior: 'smooth'
});
});
// Random pauses between actions
await page.waitForTimeout(1500 + Math.random() * 2500);
}
Verhaltensmuster | Umsetzung | Zweck |
---|---|---|
Mausbewegung | ZufĂ€llige Kurven und Geschwindigkeiten | Imitiert die natĂŒrliche Cursorbewegung |
Seiteninteraktion | Scrolltiefe und Pausen variieren | Simuliert Lesegewohnheiten |
Navigationszeitpunkt | ZufĂ€llige Verzögerungen (1.5â4 Sekunden) | Vermeidet vorhersehbare Zeitmuster |
Eingangsgeschwindigkeit | ZufÀllige Tastenanschlagintervalle | Imitiert das menschliche Tippverhalten |
Diese simulierten Interaktionen funktionieren neben den zuvor beschriebenen Konfigurationseinstellungen.
Durch die ordnungsgemĂ€Ăe Sitzungsverwaltung wird sichergestellt, dass die Stealth-Einstellungen konsistent bleiben. Verwenden Sie persistenten Speicher, um Cookies und Sitzungsdaten zu speichern:
const browserContext = await browser.createIncognitoBrowserContext({
userDataDir: './sessions/user1',
persistentContext: true
});
Sie können Cookies auch effektiv verwalten:
// Remove specific cookies but keep session-critical data
await page.deleteCookie({
name: '_ga',
domain: '.example.com'
});
Kombinieren Sie die oben genannten Techniken mit diesen praktischen Schritten fĂŒr eine bessere Automatisierung:
const maxRetries = 3;
const baseDelay = 2000;
async function fetchWithRetry(page, url) {
for (let i = 0; i < maxRetries; i++) {
try {
return await page.goto(url);
} catch (error) {
await page.waitForTimeout(baseDelay * Math.pow(2, i));
}
}
}
âEs ist wahrscheinlich unmöglich, alle Möglichkeiten zur Erkennung von Headless-Chromium zu verhindern, aber es sollte möglich sein, es so schwierig zu machen, dass es unerschwinglich wird oder zu viele Fehlalarme auslöst, um praktikabel zu sein.â â TiZho, GitHub-Mitwirkender [3]
Behalten Sie die Entwicklung von Anti-Bot-Erkennungsmethoden im Auge und passen Sie Ihre Einstellungen bei Bedarf an. Diese Vorgehensweisen ergÀnzen die zuvor im Artikel beschriebenen Stealth-Techniken.
Hier ist eine kurze Zusammenfassung der wichtigsten Punkte und Tipps zur Verwendung Puppenspieler-Extra-Plugin-Stealth effektiv.
Puppeteer-Extra-Plugin-Stealth hilft beim Automatisieren des Browsens, ohne markiert zu werden. Es funktioniert, indem Automatisierungsmarkierungen mithilfe integrierter Ausweichmodule ausgeblendet werden [2].
Einige der wichtigsten Merkmale sind:
navigator.webdriver
.Um Ihr Automatisierungs-Setup zu verfeinern, sollten Sie diese Strategien im Hinterkopf behalten:
Schwerpunkte | Strategie | Ergebnis |
---|---|---|
Ausweichmodule | Aktivieren Sie nur die Funktionen, die Sie benötigen | Geringeres Erkennungsrisiko, bessere Leistung |
Fehlermanagement | Verwenden Sie die Wiederholungslogik mit exponentiellem Backoff | ZuverlĂ€ssigere Behandlung vorĂŒbergehender Probleme |
Sitzungsbehandlung | Verwenden persistenter Browserkontexte | Konsistentes Stealth-Profil ĂŒber alle Sitzungen hinweg |
ZusÀtzliche VorschlÀge:
Zwar ist kein Setup hundertprozentig sicher, doch die Kombination mehrerer Umgehungstaktiken erschwert die Erkennung erheblich. Der Erfolg hĂ€ngt von einer sorgfĂ€ltigen Einrichtung und regelmĂ€Ăigen Aktualisierung Ihrer Methoden ab. Diese Tipps, gepaart mit den Funktionen des Plugins, bilden eine solide Grundlage fĂŒr eine unauffĂ€llige Automatisierung.