L'alternative à selenium-stealth open source
selenium-stealth est encore téléchargé des centaines de milliers de fois par mois, mais sa dernière version date de 2020. Il surcharge quelques valeurs en JavaScript et vous demande de saisir le GPU et la plateforme à la main. Clearcote génère l’identité entière à l’intérieur du moteur : les valeurs concordent entre elles et avec le réseau.
Qu'est-ce que selenium-stealth ?
selenium-stealth est un petit package Python qui réimplémente une partie de puppeteer-extra-plugin-stealth pour Selenium avec Chrome. Vous appelez stealth(driver, ...) et il injecte des scripts qui surchargent navigator.webdriver, les langues, le vendor, la plateforme ainsi que le vendor et le renderer WebGL. Il est sous licence MIT et toujours populaire : environ 500000 téléchargements PyPI par mois.
Il n’est par ailleurs plus maintenu. La dernière version PyPI (1.0.6) date de novembre 2020, et le dépôt n’a reçu aucun commit depuis. L’exemple du README ne fonctionne plus tel quel avec le Selenium actuel, qui a supprimé l’argument executable_path, et il associe platform="Win32" à un renderer WebGL "Intel Iris OpenGL Engine", une chaîne de style macOS que Chrome sous Windows ne renvoie pas. C’est le problème de fond des personas assemblés à la main : chaque valeur est définie isolément, et rien ne vérifie qu’elles appartiennent à la même machine. Il laisse aussi ChromeDriver lui-même non patché ; c’est le rôle d’undetected-chromedriver.
Clearcote vs selenium-stealth
| Fonctionnalité | Clearcote | selenium-stealth |
|---|---|---|
| Approche | Patchs C++ au niveau du moteur : valeurs natives | Surcharges JavaScript injectées par Selenium |
| Cohérence du persona | Généré à partir d’une seule seed ; GPU, plateforme et polices concordent | Valeurs saisies à la main, sans aucune vérification croisée |
| Raccord détectable | Aucun : natif dans chaque realm | Surcharges dans les scripts de la page, non appliquées dans les workers |
| Artefacts ChromeDriver | Pas de ChromeDriver : pilotage via CDP | Laissés en place |
| Cohérence TLS / réseau | Le ClientHello suit la version de Chrome annoncée | Non traitée |
| Maintenance | Actif, suit chaque version majeure de Chromium | Dernière version en novembre 2020 |
| Framework | Playwright et Puppeteer (Python, Node, .NET) | Selenium (Python) |
| Coût | Build ouvert gratuit ; dernier build gratuit avec GitHub ; Pro $49/mois | Gratuit et open source (MIT) |
Comparatif établi en novembre 2026. Licence de selenium-stealth : Open source (MIT) ; les détails évoluent — consultez le projet pour les informations les plus récentes.
Mesuré : 12 outils sur les mêmes 10 sites
Nous avons exécuté 5 fois le harness open source browsers-benchmark, la dernière fois le 27 octobre 2026. Chaque outil tournait avec sa propre IP résidentielle américaine, dans un ordre différent à chaque exécution. Un succès signifie que la vérification propre au harness pour ce site a trouvé la page elle-même, et non une page de blocage ou de challenge. Clearcote mesuré sur un ordinateur de bureau Windows (dernière build) ; les autres outils sur un serveur Linux.
selenium-stealth ne fait pas partie de ce benchmark : le harness n’a pas de driver pour lui. Le tableau présente les outils qu’il prend en charge.
| Outil | 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 : une page de résultats de recherche, un forum communautaire, le site d’un éditeur de logiciels, un distributeur de luxe, une fiche produit sur une marketplace, un site de billetterie, un distributeur de mode, un site de réservation de voyages, une compagnie aérienne, un réseau social. Il s’agit d’un instantané pris sur un seul réseau et une seule semaine : les résultats évoluent à chaque release, avec chaque proxy et avec les sites eux-mêmes, et aucun outil n’a chargé chaque site à chaque fois. Résultats bruts (JSON).
Pourquoi les équipes choisissent Clearcote
Pas de chaînes GPU tapées à la main
selenium-stealth vous fait choisir vous-même un vendor et un renderer WebGL, ou se rabat sur une valeur Intel fixe par défaut. Clearcote dérive GPU, plateforme, polices et écran d’une seule seed : ils décrivent une machine qui pourrait exister.
Des valeurs natives
Une surcharge injectée doit se dissimuler face à l’inspection des fonctions, et elle ne s’applique pas dans les Web Workers. Clearcote modifie les valeurs à l’intérieur de Chromium : il n’y a aucune surcharge à trouver, ni dans la page ni dans un worker.
Maintenu face au Chrome d’aujourd’hui
La détection évolue à chaque version de Chrome. Clearcote suit chaque nouvelle version majeure de Chromium ; les évasions de selenium-stealth datent de 2020.
La couche réseau aussi
Un navigateur qui annonce une version de Chrome doit envoyer le handshake TLS de cette version. Clearcote les maintient en phase.
Quand selenium-stealth peut être le meilleur choix
- Vous maintenez un vieux script Selenium qui l’utilise déjà et n’a besoin que de masquer
navigator.webdriversur un site peu exigeant. - Vous ne pouvez pas changer de framework. Si vous restez sur Selenium, regardez du côté de SeleniumBase, qui est activement maintenu.
FAQ
selenium-stealth est-il encore maintenu ?
Non. La dernière version sur PyPI est la 1.0.6, de novembre 2020, et le dépôt GitHub n’a reçu aucun commit depuis. Il s’installe toujours, mais ses évasions n’ont suivi ni Chrome ni l’évolution de la détection.
Que faut-il utiliser à la place de selenium-stealth ?
Si vous voulez rester sur Selenium, le mode UC ou CDP de SeleniumBase est l’option maintenue. Si vous pouvez passer à Playwright ou Puppeteer, Clearcote modifie l’empreinte dans le moteur du navigateur au lieu de la surcharger en JavaScript.
Pourquoi les valeurs vendor et renderer de WebGL comptent-elles ?
Elles font partie des valeurs d’empreinte les plus vérifiées, et elles doivent concorder avec la plateforme, les polices et la façon dont le GPU effectue réellement le rendu. Une plateforme Windows associée à une chaîne renderer macOS, par exemple, décrit une machine qui n’existe pas.
Comment scraper un site web avec Selenium ?
Chargez la page avec driver.get(), attendez le contenu avec WebDriverWait et lisez-le avec des sélecteurs CSS. Le guide du web scraping avec Selenium propose un exemple Python complet, la pagination, l’export en CSV, et explique pourquoi les scrapers Selenium se font bloquer.
Plus de deux fois plus de patchs que n'importe quel fork comparé.
Patchs compilés dans Chromium, par approche. Les outils à base de scripts ne modifient pas du tout le moteur.
Plugins de stealth
p. ex. puppeteer-extra-plugin-stealth
Drivers patchés
p. ex. undetected-chromedriver, nodriver
Autres forks de Chromium
builds gratuits et payants
Clearcote Pro
r57, Chromium 156
Nombre de patchs publiés, octobre 2026. La fourchette couvre les builds gratuits et payants des autres forks ; pour Clearcote, c'est le build Pro.
365 vérifications, gratuites, sur votre propre navigateur
Le test d'empreinte imposé à chaque build Clearcote. Lancez-le sur ce que vous utilisez aujourd'hui et comparez.
Lancer le testLes patchs du build ouvert sont publics
Le build ouvert gratuit est sous BSD-3, reproductible depuis les sources et sans compte. Le build Pro y ajoute des patchs privés.
Ouvrir sur GitHub57 versions du moteur, 7 versions majeures de Chromium
Chaque patch est repris dans chaque nouvelle version de Chromium. Le dernier build reçoit les nouvelles versions majeures le jour de leur sortie.
Voir les versionsÀ lire aussi
Essayez l'alternative Chromium open source
Gratuit et open source, s'utilise tel quel avec Playwright et Puppeteer, cohérent jusqu'au handshake TLS.
Gratuit pour un navigateur : GitHub, une vérification de carte ou un compte Google d'entreprise. Jamais débité.