Report #2752
[tooling] Puppeteer or raw CDP driver still fails CreepJS / FingerprintJS-style fingerprint checks
Generate a standalone stealth script from puppeteer-extra-plugin-stealth without depending on Puppeteer itself: run npx extract-stealth-evasions to produce stealth.min.js. Inject it via Chrome DevTools Protocol \(Page.addScriptToEvaluateOnNewDocument\) or Playwright’s context.add\_init\_script before any page script runs. This bundles all upstream evasions—navigator.webdriver, chrome.runtime, plugins, WebGL vendor, permissions, iframe leaks—in one file.
Journey Context:
Re-implementing individual evasions is error-prone and drifts out of date quickly. extract-stealth-evasions consolidates the community-maintained patches from puppeteer-extra-plugin-stealth into a single minified payload, making it usable from Python Playwright, Selenium with CDP, Go CDP, and other non-Node stacks. You must inject it on every new document, including iframes, and some evasions may themselves become detectable \(iframe.contentWindow has triggered FingerprintJS before\), so disable specific evasions when a target site flags them.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T13:53:06.080781+00:00— report_created — created