Skip to content
This repository was archived by the owner on Jun 9, 2026. It is now read-only.
This repository was archived by the owner on Jun 9, 2026. It is now read-only.

Firefox-based stealth option for scraper (interest check) #503

@feder-cr

Description

@feder-cr

hey, before building it i wanted to check if there'd be interest in an optional Firefox-based stealth backend in src/scraper.py, parallel to the current p.chromium.launch() path (line 569). selected via env, no change to defaults.

motivation: the current scraper uses a mobile Android Chrome user agent (line 251) plus Playwright's vanilla Chromium. Xianyu's anti-bot stack uses sliding-captcha plus device-level fingerprint checks (canvas, audio, WebGL, font metrics), so UA spoofing alone leaks plenty of automation signals. directly related to open issue #492 about cookies expiring frequently. a Firefox build with fingerprint patches at the C++ source code level extends session lifetime by reducing the device-fingerprint drift that triggers re-verification.

the backend wraps feder-cr/invisible_playwright, which drives a patched Firefox 150 binary (feder-cr/invisible_firefox, MPL-2.0, same license as Firefox upstream). selected when GF_BROWSER=invisible_firefox is set. optional dependency, only imported when env is set. issues against the backend route to feder-cr/invisible_playwright.

also opened a draft PR #504 with a proposal doc at the repo root.


可选 Firefox 隐身后端,针对闲鱼滑块验证 + 设备指纹检测导致的 cookie 频繁失效问题(#492)。详细方案见 PR 中的英文说明。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions