Lựa chọn thay thế rebrowser-patches mã nguồn mở
rebrowser-patches đã có đóng góp quan trọng trong việc xử lý lỗ rò Runtime.enable của Puppeteer và Playwright, và trang bot-detector của họ vẫn là một bài test hữu ích. Nhưng các package đã vá được phát hành lần cuối vào tháng 5/2025 và chỉ xử lý phần driver. Clearcote xử lý phía CDP ngay khi khởi chạy và trong engine, đồng thời thay đổi cả fingerprint.
rebrowser-patches là gì?
rebrowser-patches là một bộ patch mã nguồn cho Puppeteer và Playwright, kèm các package dựng sẵn để thay thế trực tiếp (rebrowser-puppeteer, rebrowser-playwright). Patch chính sửa lỗ rò Runtime.enable, với ba chiến lược có thể chuyển đổi: binding ở main world, luôn dùng isolated world, hoặc bật rồi tắt. Các patch nhỏ hơn đổi tên sourceURL pptr: và utility world của Puppeteer. Bài phân tích của nhóm về lỗ rò này cùng trang bot-detector công khai của họ thuộc hàng tài liệu công khai tốt nhất về chủ đề này.
Giới hạn nằm ở phạm vi và độ cập nhật. Chính README của dự án gọi việc vá mã nguồn thư viện là mong manh, vì có thể hỏng khi upstream thay đổi. Các package thay thế trực tiếp được phát hành lần cuối vào tháng 5/2025, ở Puppeteer 24.8.1 và Playwright 1.52.0; từ đó đến nay upstream đã lên Puppeteer 25.11 và Playwright 1.63. Và như mọi patch cho driver, nó để nguyên trình duyệt: fingerprint vẫn là của máy host.
Clearcote vs rebrowser-patches
| Tính năng | Clearcote | rebrowser-patches |
|---|---|---|
| Cách tiếp cận | Patch C++ ở cấp engine | Patch vào mã nguồn Puppeteer / Playwright |
| Lỗ rò Runtime.enable | Vô hiệu hóa trong engine; isolated world ngay khi khởi chạy | Sửa trong driver (ba chế độ) |
| Danh tính fingerprint | Persona nhất quán từ một seed | Giá trị thật của máy bạn |
| Phiên bản thư viện | Dùng được với Puppeteer & Playwright chính thức hiện hành | Bị ghim ở Puppeteer 24.8.1 / Playwright 1.52.0 |
| Bản phát hành gần nhất | Đang phát triển tích cực | Tháng 5/2025 |
| TLS / mạng | ClientHello theo phiên bản Chrome của persona | Chrome trên máy gửi gì thì là thế |
| Ngôn ngữ | Python, Node, .NET | Node (Puppeteer, Playwright), Python (Playwright) |
| 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ở |
Bảng so sánh được tổng hợp ngày tháng 9 năm 2026. rebrowser-patches là Mã nguồn mở (patch MIT; bản build Apache-2.0); 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 chờ thư viện được vá
Clearcote dùng được với các package Puppeteer và Playwright chính thức, nên bạn không bị ghim vào phiên bản cuối cùng mà bộ patch được rebase lên.
Cả fingerprint, không chỉ phiên làm việc
Sửa Runtime.enable giúp che phiên tự động hóa. Clearcote còn thay đổi cả canvas, WebGL, font, màn hình và phần cứng mà trang web đọc được.
Xử lý ở tầng dưới thư viện
Phần xử lý CDP của Clearcote nằm trong engine và các thiết lập khởi chạy mặc định, nên không phụ thuộc vào việc vá từng bản phát hành của một thư viện JavaScript.
Nhất quán đến tận TLS
Phiên bản Chrome tự nhận được áp dụng xuyên suốt đến tận TLS ClientHello, tầng mà một patch thư viện không thể chạm tới.
Khi nào rebrowser-patches có thể là lựa chọn tốt hơn
- Dù sao bạn cũng đang bị ghim ở Puppeteer 24 hoặc Playwright 1.52 và chỉ cần bản sửa Runtime.enable.
- Bạn muốn nghiên cứu các patch: chúng ngắn, có tài liệu đầy đủ và là cách tốt để hiểu lỗ rò này.
- Nếu cần một bản Playwright đã vá còn được bảo trì, Patchright là lựa chọn đang được cập nhật tích cực trong cùng hạng mục.
Câu hỏi thường gặp
rebrowser-patches còn được bảo trì không?
Các package đã vá được phát hành lần cuối vào tháng 5/2025, dựa trên Puppeteer 24.8.1 và Playwright 1.52.0. Hãy kiểm tra repository để biết tình trạng hiện tại trước khi dựa vào nó với các phiên bản thư viện mới hơn.
Lỗ rò Runtime.enable là gì?
Puppeteer và Playwright bật domain Runtime của CDP để theo dõi các execution context. Khi domain này đang bật, trình duyệt serialize các tham số của console theo cách mà JavaScript trên trang có thể quan sát được, từ đó để lộ sự có mặt của một automation client. rebrowser-patches và Patchright tránh bật nó trong driver; Clearcote vô hiệu hóa nó trong engine.
rebrowser-patches khác Clearcote thế nào?
rebrowser-patches thay đổi cách thư viện tự động hóa giao tiếp với Chrome nguyên bản. Clearcote thay đổi chính trình duyệt, nên cả tác dụng phụ của CDP lẫn fingerprint đều được xử lý, với Puppeteer và Playwright chính thức chạy bên trên.
Bài đọc liên quan
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ẻ.