A alternativa ao selenium-stealth de código aberto
O selenium-stealth ainda é baixado centenas de milhares de vezes por mês, mas a última versão saiu em 2020. Ele sobrescreve alguns valores com JavaScript e pede que você digite a GPU e a plataforma à mão. O Clearcote gera a identidade inteira dentro do motor, então os valores batem entre si e com a rede.
O que é o selenium-stealth?
O selenium-stealth é um pequeno pacote Python que reimplementa partes do puppeteer-extra-plugin-stealth para Selenium com Chrome. Você chama stealth(driver, ...) e ele injeta scripts que sobrescrevem navigator.webdriver, idiomas, vendor, plataforma e o vendor e o renderer do WebGL. Tem licença MIT e continua popular: cerca de 500.000 downloads por mês no PyPI.
Ele também está sem manutenção. A última versão no PyPI (1.0.6) saiu em novembro de 2020, e o repositório não recebeu commits desde então. O exemplo do README não roda mais como está escrito no Selenium atual, que removeu o argumento executable_path, e combina platform="Win32" com um renderer WebGL "Intel Iris OpenGL Engine", uma string no estilo do macOS que o Chrome no Windows não informa. Esse é o problema central das personas montadas à mão: cada valor é definido isoladamente, e nada verifica se eles pertencem à mesma máquina. Ele também deixa o próprio ChromeDriver sem patches; é para isso que existe o undetected-chromedriver.
Clearcote vs selenium-stealth
| Recurso | Clearcote | selenium-stealth |
|---|---|---|
| Abordagem | Patches em C++ no nível do motor: valores nativos | Overrides em JavaScript injetados pelo Selenium |
| Coerência da persona | Gerada a partir de uma seed; GPU, plataforma e fontes batem | Digitados à mão, nada os confere entre si |
| Emenda detectável | Nenhuma: nativo em todo realm | Overrides em scripts da página, não aplicados em workers |
| Artefatos do ChromeDriver | Sem ChromeDriver: controlado via CDP | Permanecem |
| Coerência de TLS / rede | O ClientHello acompanha a versão do Chrome declarada | Não tratado |
| Manutenção | Ativa, acompanha cada versão major do Chromium | Última versão em novembro de 2020 |
| Framework | Playwright e Puppeteer (Python, Node, .NET) | Selenium (Python) |
| Custo | Build aberto grátis; build mais recente grátis com GitHub; Pro $49/mês | Grátis e aberto (MIT) |
Comparação feita em novembro de 2026. O selenium-stealth é Código aberto (MIT); 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.
selenium-stealth 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
Nada de strings de GPU digitadas à mão
O selenium-stealth faz você escolher por conta própria o vendor e o renderer do WebGL, ou recorre a um padrão fixo da Intel. O Clearcote deriva GPU, plataforma, fontes e tela de uma única seed, então eles descrevem uma máquina que poderia existir.
Valores nativos
Um override injetado precisa se disfarçar diante da inspeção da função, e não é aplicado em Web Workers. O Clearcote muda os valores dentro do Chromium, então não há override para encontrar, nem na página nem num worker.
Mantido para o Chrome de hoje
A detecção muda a cada versão do Chrome. O Clearcote acompanha cada nova versão major do Chromium; as evasões do selenium-stealth são de 2020.
A camada de rede também
Um navegador que declara uma versão do Chrome deve enviar o handshake TLS dessa versão. O Clearcote mantém os dois alinhados.
Quando o selenium-stealth pode ser a melhor escolha
- Você mantém um script Selenium antigo que já o usa e só precisa esconder o
navigator.webdrivernum site permissivo. - Você não pode trocar de framework. Se vai continuar no Selenium, dê uma olhada no SeleniumBase, que é mantido ativamente.
Perguntas frequentes
O selenium-stealth ainda é mantido?
Não. A última versão no PyPI é a 1.0.6, de novembro de 2020, e o repositório no GitHub não recebeu commits desde então. Ele ainda instala, mas as evasões não acompanharam o Chrome nem a detecção.
O que usar no lugar do selenium-stealth?
Se você quer continuar no Selenium, o modo UC ou CDP do SeleniumBase é a opção mantida. Se puder migrar para Playwright ou Puppeteer, o Clearcote muda o fingerprint no motor do navegador em vez de sobrescrevê-lo com JavaScript.
Por que os valores de vendor e renderer do WebGL importam?
Eles estão entre os valores de fingerprint mais verificados e precisam bater com a plataforma, as fontes e a forma como a GPU realmente renderiza. Uma plataforma Windows com uma string de renderer do macOS, por exemplo, descreve uma máquina que não existe.
Como fazer scraping de um site com Selenium?
Carregue a página com driver.get(), espere o conteúdo com WebDriverWait e leia-o com seletores CSS. O guia de web scraping com Selenium traz um exemplo completo em Python, paginação, como salvar em CSV e por que scrapers com Selenium são bloqueados.
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.