Replies: 6 comments 6 replies
|
Hello, in avoid blocking we have examples of using Camoufox and CloakBrowser There are other similar projects available, but we have just those two examples; by no means an exhaustive list. I haven't had the opportunity to compare invisible_playwright against these two. Did you do any such comparison? Do you think there are specific challenges where |
|
Honestly I haven't run a head-to-head benchmark against Camoufox or CloakBrowser, so I won't claim it wins. Architecturally invisible_playwright is a patched Firefox where the fingerprint (GPU, canvas, fonts, audio, WebRTC, and a few hundred other fields) is derived from a seed at the C++ source level and delivered through prefs, and it keeps the standard Playwright Browser/Context/Page objects so it drops into existing code. Camoufox is in the same patched-Firefox space; the main practical difference here is the seed-stable persona (same seed gives the same identity across runs) and a pure-config core with no Playwright dependency. It fits best when you need many reproducible identities from a seed with a normal Playwright API. If it helps I'm happy to put together a like-for-like comparison on a shared test set. |
|
@Pijukatel @souravjain540 quick scoping question before I write this up properly. Running the numbers, the tools split into two groups that are hard to put on one scale. In the first you can derive a different fingerprint per session, so you can run many distinct identities in one crawl. In the second the browser always presents the host machine's fingerprint, and that includes plain Playwright and the driver-patched options. Some of the second group score fine on the open detectors, but for a crawler that needs a few thousand separate identities they are not really an option at all, whatever their score says. So: do you want both groups in the comparison with that distinction spelled out, or is the more useful piece for Crawlee users the one that only covers tools that can actually vary the identity? Happy either way, I just want to aim it right before writing. |
|
@Pijukatel @souravjain540 following up on the scoping question above, still curious about your take before I start writing. Happy to go either direction, just want to aim the article right from the start. |
|
@Pijukatel @souravjain540 the article is up: apify/crawlee#4115. It compares plain Playwright, patchright and an engine-level fingerprint spoof against four open detectors, six runs each, and reports the fields rather than the scores. What it is built around: patchright closes the WebDriver row and still reports a SwiftShader renderer with the same FingerprintJS visitor id as unpatched Playwright. I maintain one of the three, so it also says where its clean verdicts come from checks gated to Chrome that never run against Firefox. Workflows are waiting on approval since it comes from a fork. Tell me if you want a different angle or length. |
|
Hey @feder-cr thank you so much for the amazing article, can you share your Apify username, so I can credit you the promised credits :) |
Uh oh!
There was an error while loading. Please reload this page.
browser_type='firefox' here already works well. I maintain invisible_playwright, a Playwright wrapper around a Firefox build patched at the source level for a realistic fingerprint (no injected JS), which pairs directly with this option via executable_path. Could be a useful mention for crawls that hit bot detection on Chromium. Happy to write a short example if there's interest.
All reactions