A alternativa ao rebrowser-patches de código aberto
O rebrowser-patches faz um trabalho importante sobre o vazamento do Runtime.enable no Puppeteer e no Playwright, e a página bot-detector do projeto continua sendo um teste útil. Os pacotes com patches alcançaram as versões atuais do Puppeteer e do Playwright em outubro de 2026, depois de 17 meses sem uma nova versão, mas só cobrem o driver. O Clearcote trata o lado do CDP na inicialização e no motor, e também muda o fingerprint.
O que é o rebrowser-patches?
O rebrowser-patches é um conjunto de patches de código-fonte para o Puppeteer e o Playwright, com pacotes prontos para substituição direta (rebrowser-puppeteer, rebrowser-playwright). O patch principal corrige o vazamento do Runtime.enable, com estratégias alternáveis: uma busca do contexto no main world (com um binding como fallback), isolated worlds o tempo todo ou (no Puppeteer) ativar e depois desativar. Patches menores tiram os nomes das bibliotecas dos stack traces (o sourceURL pptr: do Puppeteer, o helper UtilityScript do Playwright), renomeiam o utility world e ocultam o navigator.webdriver. O texto da equipe sobre o vazamento e a página bot-detector aberta deles estão entre o melhor material público sobre o assunto.
Os limites são o escopo e a manutenção. O próprio README diz que aplicar patches no código-fonte de bibliotecas é frágil, já que pode quebrar conforme o upstream muda. Os pacotes drop-in ficaram 17 meses sem uma nova versão, de maio de 2025 (Puppeteer 24.8.1, Playwright 1.52.0) a outubro de 2026, quando alcançaram o Puppeteer 25.14 e o Playwright 1.64; o repositório agora tem scripts para portar, testar e lançar cada nova versão do upstream. E, como todo patch de driver, ele deixa o navegador como veio: o fingerprint é o do host.
Clearcote vs rebrowser-patches
| Recurso | Clearcote | rebrowser-patches |
|---|---|---|
| Abordagem | Patches em C++ no nível do motor | Patches no código-fonte do Puppeteer / Playwright |
| Vazamento do Runtime.enable | Neutralizado no motor; isolated worlds na inicialização | Corrigido no driver (três modos no Puppeteer, dois no Playwright) |
| Identidade do fingerprint | Persona coerente a partir de uma seed | Os valores reais do seu host |
| Versões das bibliotecas | Funciona com o Puppeteer e o Playwright oficiais atuais | Um build com patches por versão (Puppeteer 25.14, Playwright 1.64 em outubro de 2026) |
| Última versão | Ativo | Outubro de 2026, depois de 17 meses sem nenhuma |
| TLS / rede | O ClientHello acompanha a versão do Chrome da persona | O que o Chrome local enviar |
| Linguagens | Python, Node, .NET | Node (Puppeteer, Playwright), Python (Playwright) |
| Custo | Build aberto grátis; build mais recente grátis com GitHub; Pro $49/mês | Grátis e aberto |
Comparação feita em novembro de 2026. O rebrowser-patches é Código aberto (patches MIT; builds Apache-2.0); os detalhes mudam — confira o projeto para ver as informações mais recentes.
Medido: 12 ferramentas nos mesmos 10 sites
Rodamos o harness open source browsers-benchmark 5 vezes, terminando em 27 de outubro de 2026. Cada ferramenta rodou com seu próprio IP residencial dos EUA, em uma ordem diferente a cada rodada. Um acerto significa que a própria verificação do harness para aquele site encontrou a página em si, e não uma página de bloqueio ou de desafio. Clearcote medido em um desktop Windows (build mais recente); as outras ferramentas, em um servidor Linux.
rebrowser-patches não está neste benchmark: o harness não tem driver para ele. A tabela mostra as ferramentas que ele suporta.
| Ferramenta | Headed | Headless |
|---|---|---|
| Clearcote0.63.2 · r52 | 78%39/50 | 80%40/50 |
| Camoufox0.5.8 · v156.0.1-beta.36 | 72%36/50 | 80%40/50 |
| Invisible Playwright0.43.0 · Firefox | 76%38/50 | 78%39/50 |
| CloakBrowser0.6.4 | 74%37/50 | 64%32/50 |
| SeleniumBase (CDP mode)4.49.0 · Chrome | 74%37/50 | — |
| nodriver0.50.6 · Chrome | 74%37/50 | 40%20/50 |
| Zendriver0.17.1 · Chrome | 64%32/50 | 60%30/50 |
| tf-playwright-stealth (Firefox)1.2.0 | 58%29/50 | 62%31/50 |
| tf-playwright-stealth (Chromium)1.2.0 | 56%28/50 | 50%25/50 |
| Playwright (Chromium)1.62.0 | 56%28/50 | 30%15/50 |
| Playwright (Firefox)1.62.0 | 54%27/50 | 54%27/50 |
| Patchright1.64.3 · Chrome | 24%12/50 | 26%13/50 |
Sites: uma página de resultados de busca, um fórum de comunidade, o site de uma empresa de software, uma varejista de luxo, a página de produto de um marketplace, um site de venda de ingressos, uma varejista de moda, um site de reservas de viagem, uma companhia aérea, uma rede social. Este é um retrato de uma rede e de uma semana: os resultados mudam a cada release, a cada proxy e com os próprios sites, e nenhuma ferramenta carregou todos os sites todas as vezes. Resultados brutos (JSON).
Por que equipes escolhem o Clearcote
Nenhuma biblioteca com patches para esperar
O Clearcote funciona com os pacotes oficiais do Puppeteer e do Playwright, então você não fica preso à última versão sobre a qual um conjunto de patches foi rebaseado.
O fingerprint, não só a sessão
Corrigir o Runtime.enable esconde a sessão de automação. O Clearcote também muda o canvas, o WebGL, as fontes, a tela e o hardware que a página lê.
Tratado abaixo da biblioteca
O tratamento de CDP do Clearcote fica no motor e nos padrões de inicialização, então não depende de aplicar patches a cada versão de uma biblioteca JavaScript.
Coerente até o TLS
A versão do Chrome declarada chega até o ClientHello do TLS, uma camada que um patch de biblioteca não alcança.
Quando o rebrowser-patches pode ser a melhor escolha
- Um Chrome padrão já serve para você, e você só precisa das correções do lado do driver, como a do vazamento do Runtime.enable.
- Você quer estudar os patches: são curtos, bem documentados e uma boa forma de entender o vazamento.
- Para um Playwright com patches, o Patchright é a outra opção na mesma categoria, com um build para cada versão do Playwright.
Perguntas frequentes
O rebrowser-patches ainda é mantido?
Sim, depois de uma longa pausa. Os pacotes com patches ficaram 17 meses sem uma nova versão, de maio de 2025 (Puppeteer 24.8.1, Playwright 1.52.0) a outubro de 2026, quando a versão 1.1.1 trouxe pacotes drop-in para o Puppeteer 25.14 e o Playwright 1.64, além de scripts para portar cada nova versão do upstream. Confira se existe um build com patches para a versão da biblioteca que você usa.
O que é o vazamento do Runtime.enable?
O Puppeteer e o Playwright ativam o domínio Runtime do CDP para acompanhar os contextos de execução. Enquanto ele está ativo, o navegador serializa os argumentos do console de um jeito que o JavaScript da página consegue observar, o que revela um cliente de automação. O rebrowser-patches e o Patchright evitam ativá-lo no driver; o Clearcote o neutraliza no motor.
rebrowser-patches ou Clearcote?
O rebrowser-patches muda a forma como a biblioteca de automação conversa com um Chrome padrão. O Clearcote muda o navegador, então tanto os efeitos colaterais do CDP quanto o fingerprint são tratados, com o Puppeteer e o Playwright oficiais por cima.
Mais que o dobro de patches de qualquer fork que comparamos.
Patches compilados no Chromium, por abordagem. Ferramentas baseadas em scripts não mudam o motor.
Plugins de stealth
ex.: puppeteer-extra-plugin-stealth
Drivers modificados
ex.: undetected-chromedriver, nodriver
Outros forks do Chromium
builds gratuitos e pagos
Clearcote Pro
r57, Chromium 156
Número de patches publicado, outubro de 2026. A faixa cobre os builds gratuitos e pagos dos outros forks; no Clearcote, é o build Pro.
365 verificações, grátis, no seu próprio navegador
O teste de fingerprint a que todo build do Clearcote é submetido. Rode no que você usa hoje e compare.
Rodar o testeOs patches do build aberto são públicos
O build aberto gratuito é BSD-3, reproduzível a partir do código-fonte e não precisa de conta. O build Pro adiciona patches privados por cima.
Abrir no GitHub57 versões do motor, 7 versões principais do Chromium
Cada patch é levado para cada nova versão do Chromium. O build mais recente recebe as novas versões principais no dia do lançamento.
Ver as versõesLeituras 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: GitHub, uma verificação de cartão ou uma conta corporativa do Google. Nunca é cobrado.