Saltar al contenido

La alternativa a playwright-stealth de código abierto

playwright-stealth es la forma más rápida de agregar stealth a Playwright en Python: un wrapper y cada página recibe un conjunto de evasiones en JavaScript. Pero esas evasiones son sobrescrituras sobre un navegador estándar, y su propio mantenedor lo describe como una prueba de concepto. Clearcote, en cambio, fija esos valores de forma nativa en el motor, así que no hay ninguna sobrescritura que una página pueda encontrar.

¿Qué es playwright-stealth?

playwright-stealth es un port a Python de puppeteer-extra-plugin-stealth para Playwright. El port original de AtuboDad no se actualiza desde 2023; el nombre en PyPI ahora lo lleva un fork con mantenimiento (Mattwmaster58), que publicó la 2.0 con una API más limpia e integró algunos de los pull requests pendientes (última versión 2.0.3, abril de 2026). Tiene licencia MIT y se usa muchísimo: cerca de 3 millones de descargas al mes en PyPI.

Funciona principalmente registrando init scripts en cada contexto, cada uno de los cuales parchea una señal: navigator.webdriver, navigator.languages, los plugins, el vendor de WebGL, chrome.runtime, etc. El mantenedor es franco sobre sus límites. El README dice que no esperes que sortee nada más allá de la detección de bots más simple, y lo describe como un punto de partida. Las razones son estructurales: una sobrescritura de JavaScript se puede detectar con Function.prototype.toString o revisando el descriptor de la propiedad, los init scripts de la página no llegan a los Web Workers y, aunque su wrapper también fija un par de flags de lanzamiento y los encabezados User-Agent y Sec-CH-UA, nada en el paquete toca los efectos secundarios de CDP del propio driver de Playwright ni el handshake TLS.

Clearcote vs playwright-stealth

CaracterísticaClearcoteplaywright-stealth
Enfoque Parches en C++ a nivel del motor: valores nativos Init scripts de JavaScript sobre un navegador estándar
Rastro detectable Ninguno: nativo en la página, los iframes y los workers Sobrescrituras visibles con toString, descriptores y relecturas desde workers
Identidad de la huella digital Persona coherente a partir de un solo seed (canvas, WebGL, fuentes, navigator) Unos pocos valores fijados a mano sobre los reales del host
Efectos secundarios del driver / CDP Contenidos al lanzar (mundos aislados) y en el motor No se abordan; driver de Playwright estándar
TLS / coherencia de red El ClientHello sigue la versión de Chrome declarada TLS no se aborda; solo fija los encabezados User-Agent y Sec-CH-UA
Framework Playwright y Puppeteer (Python, Node, .NET) Playwright (Python)
Configuración Cambias el binario del navegador Envuelves Playwright en una línea
Costo Build abierto gratis; build más reciente gratis con GitHub; Pro $49/mes Gratis y abierto (MIT)

Comparación elaborada en noviembre de 2026. Licencia de playwright-stealth: Código abierto (MIT). Los detalles cambian, así que consulta su proyecto para ver lo más reciente.

Medido: 12 herramientas en los mismos 10 sitios

Ejecutamos el harness de código abierto browsers-benchmark 5 veces; la última terminó el 27 de octubre de 2026. Cada herramienta corrió con su propia IP residencial de EE. UU., en un orden distinto en cada ejecución. Un acierto significa que la propia comprobación del harness para ese sitio encontró la página en sí, no una página de bloqueo o de desafío. Clearcote medido en un escritorio Windows (build más reciente); las demás herramientas, en un servidor Linux.

El harness prueba tf-playwright-stealth, un fork de playwright-stealth; sus filas están marcadas.

Proporción de cargas de página que llegaron a la página real, por herramienta, en modo headed y headless
HerramientaHeadedHeadless
Clearcote0.63.2 · r5278%39/5080%40/50
Camoufox0.5.8 · v156.0.1-beta.3672%36/5080%40/50
Invisible Playwright0.43.0 · Firefox76%38/5078%39/50
CloakBrowser0.6.474%37/5064%32/50
SeleniumBase (CDP mode)4.49.0 · Chrome74%37/50—
nodriver0.50.6 · Chrome74%37/5040%20/50
Zendriver0.17.1 · Chrome64%32/5060%30/50
tf-playwright-stealth (Firefox)1.2.058%29/5062%31/50
tf-playwright-stealth (Chromium)1.2.056%28/5050%25/50
Playwright (Chromium)1.62.056%28/5030%15/50
Playwright (Firefox)1.62.054%27/5054%27/50
Patchright1.64.3 · Chrome24%12/5026%13/50

Sitios: una página de resultados de búsqueda, un foro de comunidad, el sitio de una empresa de software, una tienda de lujo, la página de producto de un marketplace, un sitio de venta de boletos, una tienda de moda, un sitio de reservas de viaje, una aerolínea, una red social. Esto es una instantánea de una red y una semana: los resultados cambian con cada release, cada proxy y los propios sitios, y ninguna herramienta cargó todos los sitios todas las veces. Resultados sin procesar (JSON).

Por qué los equipos eligen Clearcote

Nativo, no sobrescrito

Cada evasión de playwright-stealth reemplaza una función real del navegador por una de JavaScript, y ese reemplazo se puede observar. Clearcote cambia el valor dentro de Chromium, así que la función que inspecciona una página es la nativa real.

La misma respuesta en cada realm

Los init scripts parchean la página. Si vuelves a leer el mismo valor desde un Web Worker o un iframe nuevo, obtienes el original sin parchear. Los valores a nivel del motor coinciden en todas partes.

Una identidad completa, no un puñado de campos

Un seed de --fingerprint produce una máquina consistente en canvas, WebGL, audio, fuentes, pantalla y hardware, en lugar de unas pocas sobrescrituras apiladas sobre el host real.

Conserva tu código de Playwright

Clearcote es un binario de Chromium. Apunta executable_path a él, o usa el launch() del SDK, y el resto de tu script de Playwright queda igual.

Cuándo playwright-stealth puede ser mejor opción

  • Quieres probar algo en cinco minutos contra un objetivo poco exigente y no quieres gestionar un binario de navegador.
  • Tus objetivos solo revisan las señales obvias, como navigator.webdriver.
  • Ya usas Clearcote y quieres saber si todavía lo necesitas: no. Sus evasiones duplican valores que el motor ya fija, y agregar sobrescrituras de JavaScript encima vuelve a introducir el rastro que el motor elimina.

Preguntas frecuentes

¿playwright-stealth todavía funciona?

Todavía se instala y funciona, y la última versión del fork mantenido es la 2.0.3 (abril de 2026). Que alcance o no depende del objetivo. Su propio README advierte que solo resuelve la detección más simple, porque las sobrescrituras de JavaScript se pueden detectar y no toca el driver ni la capa TLS.

¿Qué diferencia hay entre playwright-stealth y Clearcote?

playwright-stealth inyecta JavaScript en un Chromium estándar para sobrescribir un conjunto de valores. Clearcote es un Chromium modificado en el que esos valores son nativos y consistentes entre frames y workers, con una huella digital TLS acorde por debajo. Los dos se controlan con Playwright normal.

¿Debería usar playwright-stealth junto con Clearcote?

No. El motor ya reporta valores coherentes, y apilar sobrescrituras de JavaScript encima reemplaza funciones nativas por otras detectables. Lanza Clearcote con Playwright a secas.

¿Existe un playwright-stealth para Node.js?

El equivalente en Node es playwright-extra con el plugin stealth de puppeteer-extra, que tiene el mismo diseño basado en sobrescrituras de JavaScript. Clearcote funciona igual desde Python, Node y .NET.

Qué tan profundo llega

Más del doble de parches que cualquier fork que comparamos.

Parches compilados en Chromium, por enfoque. Las herramientas basadas en scripts no cambian el motor en absoluto.

Plugins de stealth

p. ej. puppeteer-extra-plugin-stealth

0

Drivers parcheados

p. ej. undetected-chromedriver, nodriver

0

Otros forks de Chromium

builds gratuitos y de pago

35–87

Clearcote Pro

r57, Chromium 156

240

Cantidad de parches publicada, octubre de 2026. El rango cubre los builds gratuitos y de pago de otros forks; en Clearcote es el build Pro.

Pruébalo

365 comprobaciones, gratis, en tu propio navegador

El test de huella digital al que se somete cada build de Clearcote. Ejecútalo en lo que usas hoy y compara.

Ejecutar el test
Léelo

Los parches del build abierto son públicos

El build abierto gratuito es BSD-3, reproducible desde el código fuente y no necesita cuenta. El build Pro agrega parches privados encima.

Abrir en GitHub
Míralo salir

57 versiones del motor, 7 versiones mayores de Chromium

Cada parche se lleva a cada nueva versión de Chromium. El build más reciente recibe las nuevas versiones mayores el día que salen.

Ver las versiones

Lecturas relacionadas

DocumentaciónMigrating from playwright-stealth or PatchrightReplace one line: clearcote.launch() returns a Playwright browser with the fingerprint set in the engine. What to remove from your script.Preguntas y respuestasWhy does Function.toString() reveal a hooked function?Calling toString() on a native function returns “[native code]”; an override returns its own source instead — so detectors stringify APIs to catch JavaScript spoofs.Preguntas y respuestasPlaywright vs Puppeteer for stealth: does it matter?Both drive Chromium over CDP, so both leak the same automation artifacts. Stealth comes from the browser binary and launch defaults, not the framework you pick.CompararClearcote vs puppeteer-extra-plugin-stealthEl plugin stealth sigue siendo la forma más instalada de agregarle evasiones a Puppeteer, con más de un millón de descargas semanales, pero no publica una versión desde marzo de 2023. Cada evasión es un parche de JavaScript sobre un Chrome estándar, y los parches de JavaScript se delatan solos. Clearcote fija esos valores de forma nativa en el motor.CompararClearcote vs CamoufoxCamoufox es un navegador antidetect de código abierto bien construido, basado en Firefox. Clearcote aplica el mismo enfoque a nivel del motor sobre Chromium, así que tu automatización se presenta como el navegador que realmente usa cerca del 66% de la web, y no como uno que usa alrededor del 3%.CompararClearcote vs CloakBrowserCloakBrowser es un Chromium stealth a nivel del motor, capaz y con muchos seguidores, pero el binario parcheado es de código cerrado. Clearcote también trabaja a nivel del motor y ofrece un build abierto en el que puedes leer y recompilar cada parche.CompararClearcote vs undetected-chromedriverundetected-chromedriver todavía se descarga unos 2.5 millones de veces al mes, pero su última versión es de febrero de 2024. Oculta el rastro de Selenium/ChromeDriver sobre un Chrome estándar y nunca toca la huella digital ni la capa de red. Clearcote cambia ambas en el motor.

Prueba la alternativa de código abierto basada en Chromium

Gratis y de código abierto, un reemplazo directo para Playwright y Puppeteer, coherente hasta el handshake TLS.

Gratis para un navegador: GitHub, una verificación de tarjeta o una cuenta de Google de empresa. Nunca se cobra.