A alternativa ao Patchright de código aberto
O Patchright é o Playwright com patches mais bem mantido que existe: um substituto direto que remove os vazamentos de automação do driver. Ele não muda o navegador em si, então o fingerprint que um site lê continua sendo o da sua máquina. O Clearcote trabalha uma camada abaixo, no motor, e os dois se combinam.
O que é o Patchright?
O Patchright (de Vinyzu e Kaliiiiiiiiii) é um build do Playwright com patches para Python, Node.js e .NET. É Apache-2.0, acompanha de perto as versões do Playwright (1.63 no momento em que escrevemos, a mesma do upstream) e é muito usado: cerca de 3,5 milhões de downloads por mês no PyPI, mais aproximadamente 285.000 downloads por semana no npm. Só funciona com navegadores baseados em Chromium.
Os patches do Patchright miram o driver de automação. Ele evita o vazamento do Runtime.enable executando código em contextos de execução isolados, desativa a Console API (então eventos de console não funcionam), remove --enable-automation e adiciona --disable-blink-features=AutomationControlled, e consegue acessar shadow roots fechados. Os init scripts são entregues via roteamento de requisições, o que, segundo o README, é detectável por timing.
O que o Patchright deixa de lado, de propósito, é o navegador. Ele recomenda rodar um Chrome de verdade, e qualquer Chrome que ele inicie informa seu hardware, GPU, fontes e tela reais. Num desktop, isso pode ser o ideal. Num servidor ou no Docker, os valores reais são os de uma VM: uma GPU por software, um conjunto de fontes de Linux, uma tela headless. Todas as sessões nessa máquina também compartilham uma única identidade.
Clearcote vs Patchright
| Recurso | Clearcote | Patchright |
|---|---|---|
| Camada em que atua | O motor do navegador (C++ / Blink) | O driver do Playwright |
| Vazamentos do driver / CDP | O motor neutraliza o Runtime.enable; isolated worlds na inicialização | Driver com patches evita o Runtime.enable; Console API desativada |
| Identidade do fingerprint | Persona coerente a partir de uma seed (canvas, WebGL, fontes, navigator, tela) | Os valores reais do seu host |
| Identidades por máquina | Uma por seed, quantas você precisar | Uma: a própria máquina |
| Em servidores e no Docker | A persona esconde a GPU por software e as fontes da VM | Informa o hardware real da VM |
| TLS / rede | O ClientHello acompanha a versão do Chrome da persona | O que o Chrome iniciado enviar |
| Paridade com as versões do Playwright | Funciona com o Playwright padrão, em qualquer versão | Um build com patches para cada versão do Playwright |
| Linguagens | Python, Node, .NET | Python, Node, .NET |
| Custo | Build aberto grátis; build mais recente grátis com GitHub; Pro $49/mês | Grátis e aberto (Apache-2.0) |
Comparação feita em setembro de 2026. O Patchright é Código aberto (Apache-2.0); os detalhes mudam — confira o projeto para ver as informações mais recentes.
Por que equipes escolhem o Clearcote
Outra camada, não um rival
A detecção olha para três lugares: o driver, a sessão CDP e o fingerprint. O Patchright cobre os dois primeiros. O Clearcote cobre o fingerprint no motor, e os padrões de inicialização dele também tratam o lado do CDP.
Uma identidade que você escolhe
Com o Patchright sobre um Chrome padrão, o fingerprint é o da máquina em que você roda. O Clearcote dá a cada seed sua própria máquina consistente, o que importa mais em servidores, onde a máquina real parece uma VM.
Nenhum driver para manter sincronizado
O Clearcote funciona com os pacotes oficiais do Playwright e do Puppeteer, então você os atualiza no ritmo deles, em vez de esperar por um build com patches.
Coerente até o TLS
A versão do Chrome que a persona declara chega até o ClientHello do TLS, então a camada de rede bate com o JavaScript.
Quando o Patchright pode ser a melhor escolha
- Você roda num desktop de verdade, com um Chrome de verdade e um perfil normal, e os únicos indícios que precisa eliminar são os do driver.
- Você quer um substituto direto do Playwright e nada mais para instalar.
- Ou use os dois: o Patchright aceita qualquer binário Chromium, então você pode manter os patches de driver dele e colocar o Clearcote por baixo com
executable_path=clearcote.download().
Perguntas frequentes
Patchright ou Clearcote: de qual eu preciso?
Eles resolvem camadas diferentes. O Patchright aplica patches no driver do Playwright para que a sessão de automação fique mais difícil de ver. O Clearcote aplica patches no navegador para que o fingerprint (canvas, WebGL, fontes, navigator, TLS) seja uma persona coerente, e não o seu host. Se o problema é o seu fingerprint, o Patchright sozinho não vai mudá-lo.
Dá para usar o Patchright com o Clearcote?
Sim. O Patchright inicia qualquer binário Chromium. Pegue o caminho do Clearcote pelo SDK com download() e passe-o como executable_path, junto com seus argumentos --fingerprint.
O Patchright altera o fingerprint do navegador?
Não. Ele muda flags de inicialização e a forma como o driver conversa com o navegador. Canvas, WebGL, fontes, tela e hardware vêm do Chrome que você roda e da máquina em que ele roda.
Por que o console.log não funciona no Patchright?
O Patchright desativa a Console API para evitar um efeito colateral detectável dos domínios Runtime e Console do CDP. O README sugere usar um logger em JavaScript se você precisar de saída no console.
Leituras relacionadas
Experimente a alternativa de código aberto baseada em Chromium
Grátis e de código aberto, plug-and-play no Playwright e no Puppeteer, coerente até o handshake TLS.
Grátis para um navegador com GitHub. Sem cartão.