Report #856
[tooling] Selenium/Playwright still detected by Cloudflare and Imperva despite stealth plugins
Switch to nodriver \(pip install nodriver\), an async Python CDP wrapper that launches real Chrome without WebDriver or ChromeDriver. Use \`await nodriver.start\(\)\` and \`await browser.get\(url\)\`; it avoids navigator.webdriver and injected automation markers by talking directly to Chrome over its own CDP WebSocket.
Journey Context:
Stealth plugins patch JavaScript artifacts like navigator.webdriver, but the WebDriver binary, CDP signatures, and automation flags still leak. nodriver—successor to undetected-chromedriver—skips the driver layer entirely and uses its own CDP implementation, passing common fingerprint tests \(deviceandbrowserinfo.com, Cloudflare challenge\) out of the box. It is async-only and Chrome-only, with a smaller ecosystem and thinner docs than Playwright; for production teams needing Docker or faster bug fixes, the community fork zendriver is a near drop-in replacement. Use it when the target runs client-side anti-bot scripts and you need a real browser with fewer detection markers than Selenium/Playwright can provide.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-13T13:58:44.522825+00:00— report_created — created