Aller au contenu

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éClearcoteselenium-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.

Part des chargements de page ayant atteint la vraie page, par outil, en mode headed et headless
OutilHeadedHeadless
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

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.webdriver sur 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.

Jusqu'où ça va

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

0

Drivers patchés

p. ex. undetected-chromedriver, nodriver

0

Autres forks de Chromium

builds gratuits et payants

35–87

Clearcote Pro

r57, Chromium 156

240

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.

Testez

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 test
Lisez

Les 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 GitHub
Suivez les sorties

57 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

DocumentationMigrating from undetected-chromedriverMove an undetected-chromedriver or selenium-stealth script to Clearcote: launch() replaces the driver, with a Selenium-to-Playwright call mapping.Q&RWhy does navigator.webdriver reveal automation?navigator.webdriver is true whenever a browser is launched under automation flags; overriding it from JavaScript is itself detectable, so the fix belongs in the engine.Q&RWhat is WebGL fingerprinting?WebGL fingerprinting reads the GPU's render output plus driver strings (UNMASKED_VENDOR/RENDERER) and parameter limits — highly device-specific, and hard to fake coherently.ComparatifClearcote vs undetected-chromedriverundetected-chromedriver est encore téléchargé environ 2,5 millions de fois par mois, mais sa dernière version date de février 2024. Il cache le raccord Selenium/ChromeDriver sur un Chrome d’origine et ne touche jamais ni à l’empreinte ni à la couche réseau. Clearcote modifie les deux dans le moteur.ComparatifClearcote vs CamoufoxCamoufox est un navigateur anti-détection open source bien conçu, basé sur Firefox. Clearcote applique la même approche au niveau du moteur, mais à Chromium : votre automatisation présente ainsi le navigateur qu’utilisent réellement environ 66 % du web, et non un navigateur utilisé par environ 3 %.ComparatifClearcote vs CloakBrowserCloakBrowser est un Chromium furtif solide, modifié au niveau du moteur et très suivi, mais son binaire patché est fermé. Clearcote agit lui aussi au niveau du moteur et publie un build ouvert dont vous pouvez lire et recompiler chaque patch.

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é.