Chuyển đến nội dung

Lựa chọn thay thế selenium-stealth mã nguồn mở

selenium-stealth vẫn được tải hàng trăm nghìn lượt mỗi tháng, nhưng bản phát hành cuối là từ năm 2020. Nó ghi đè vài giá trị bằng JavaScript và bắt bạn tự gõ tay GPU và platform. Clearcote tạo toàn bộ danh tính ngay trong engine, nên các giá trị khớp với nhau và khớp với tầng mạng.

selenium-stealth là gì?

selenium-stealth là một package Python nhỏ, viết lại một phần puppeteer-extra-plugin-stealth cho Selenium dùng với Chrome. Bạn gọi stealth(driver, ...) và nó chèn các script ghi đè navigator.webdriver, languages, vendor, platform cùng WebGL vendor và renderer. Package dùng giấy phép MIT và vẫn phổ biến: khoảng 284.000 lượt tải PyPI mỗi tháng.

Package này cũng không còn được bảo trì. Bản phát hành PyPI cuối (1.0.6) ra vào tháng 11/2020 và repository không thay đổi từ cuối năm 2021. Ví dụ trong README không còn chạy nguyên văn được trên Selenium hiện tại, vốn đã bỏ tham số executable_path, và ví dụ đó ghép platform="Win32" với WebGL renderer "Intel Iris OpenGL Engine" — một chuỗi kiểu macOS mà Chrome trên Windows không báo cáo. Đó là vấn đề cốt lõi của persona lắp ráp thủ công: mỗi giá trị được đặt riêng lẻ, và không có gì kiểm tra xem chúng có thuộc về cùng một máy hay không. Nó cũng để nguyên ChromeDriver không vá; đó là việc của undetected-chromedriver.

Clearcote vs selenium-stealth

Tính năngClearcoteselenium-stealth
Cách tiếp cận Patch C++ ở cấp engine: giá trị native Ghi đè JavaScript do Selenium chèn vào
Tính nhất quán của persona Tạo từ một seed; GPU, platform và font khớp nhau Gõ tay, không có gì đối chiếu chéo
Điểm lộ có thể bị phát hiện Không có: native ở mọi realm Ghi đè lộ ra qua toString và việc đọc lại từ worker
Dấu vết ChromeDriver Không dùng ChromeDriver: điều khiển qua CDP Vẫn còn nguyên
Tính nhất quán TLS / mạng ClientHello theo phiên bản Chrome tự nhận Không xử lý
Bảo trì Đang phát triển tích cực, bám theo Chromium hiện hành Bản phát hành cuối: tháng 11/2020
Framework Playwright & Puppeteer (Python, Node, .NET) Selenium (Python)
Chi phí Bản build mở miễn phí; bản build mới nhất miễn phí với GitHub; Pro $49/tháng Miễn phí & mã nguồn mở (MIT)

Bảng so sánh được tổng hợp ngày tháng 9 năm 2026. selenium-stealth là Mã nguồn mở (MIT); thông tin có thể thay đổi — hãy xem trang dự án của nó để có thông tin mới nhất.

Vì sao các team chọn Clearcote

Không phải tự gõ chuỗi GPU

selenium-stealth bắt bạn tự chọn WebGL vendor và renderer. Clearcote suy ra GPU, platform, font và màn hình từ một seed duy nhất, nên chúng mô tả một cỗ máy có thể tồn tại thật.

Giá trị native

Một lớp ghi đè được chèn vào có thể bị phát hiện bằng cách kiểm tra hàm. Clearcote thay đổi giá trị ngay bên trong Chromium, nên không có lớp ghi đè nào để tìm, dù trong trang hay trong worker.

Được bảo trì theo Chrome hiện nay

Cơ chế phát hiện thay đổi theo mỗi bản phát hành Chrome. Clearcote phát hành trên Chromium hiện hành; các evasion của selenium-stealth có từ năm 2020.

Cả tầng mạng

Trình duyệt đã tự nhận là một phiên bản Chrome nào đó thì nên gửi đúng TLS handshake của phiên bản ấy. Clearcote giữ cho hai thứ này khớp nhau.

Khi nào selenium-stealth có thể là lựa chọn tốt hơn

  • Bạn đang duy trì một script Selenium cũ vốn đã dùng nó, và chỉ cần ẩn navigator.webdriver trên một trang dễ tính.
  • Bạn không thể đổi framework. Nếu vẫn ở lại với Selenium, hãy xem SeleniumBase, dự án đang được bảo trì tích cực.

Câu hỏi thường gặp

selenium-stealth còn được bảo trì không?

Không. Bản phát hành cuối trên PyPI là 1.0.6 từ tháng 11/2020, và repository GitHub không được cập nhật từ tháng 12/2021. Nó vẫn cài được, nhưng các evasion không theo kịp Chrome lẫn các cơ chế phát hiện.

Nên dùng gì thay cho selenium-stealth?

Nếu muốn ở lại với Selenium, UC Mode hoặc CDP Mode của SeleniumBase là lựa chọn còn được bảo trì. Nếu có thể chuyển sang Playwright hoặc Puppeteer, Clearcote thay đổi fingerprint ngay trong engine trình duyệt thay vì ghi đè bằng JavaScript.

Vì sao giá trị WebGL vendor và renderer lại quan trọng?

Chúng thuộc nhóm giá trị fingerprint bị kiểm tra nhiều nhất, và phải khớp với platform, font và cách GPU thực sự render. Ví dụ, platform Windows đi kèm chuỗi renderer của macOS là đang mô tả một cỗ máy không tồn tại.

Bài đọc liên quan

Hỏi đápWhy 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.Hỏi đápWhat 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.So sánhClearcote vs undetected-chromedriverundetected-chromedriver vẫn được tải khoảng 2 triệu lượt mỗi tháng, nhưng bản phát hành cuối là từ tháng 2/2024. Nó che điểm lộ Selenium/ChromeDriver trên Chrome nguyên bản và không hề động đến fingerprint hay tầng mạng. Clearcote thay đổi cả hai trong engine.So sánhClearcote vs CamoufoxCamoufox là một trình duyệt antidetect mã nguồn mở được làm kỹ lưỡng, xây trên Firefox. Clearcote áp dụng cùng cách tiếp cận ở cấp engine cho Chromium, để tự động hóa của bạn thể hiện ra đúng loại trình duyệt mà khoảng 69% web thực sự dùng, thay vì loại chỉ khoảng 3% dùng.So sánhClearcote vs CloakBrowserCloakBrowser là một bản Chromium stealth ở cấp engine có năng lực và được đông đảo người dùng theo dõi, nhưng binary đã vá là mã nguồn đóng. Clearcote cũng can thiệp ở cấp engine, chạy Chromium mới hơn và có bản build mở mà bạn đọc và build lại được từng patch.

Dùng thử lựa chọn thay thế Chromium mã nguồn mở

Miễn phí và mã nguồn mở, thay thế drop-in cho Playwright & Puppeteer, nhất quán đến tận TLS handshake.

Miễn phí cho một trình duyệt với GitHub. Không cần thẻ.