mirror of
https://github.com/feder-cr/invisible_playwright.git
synced 2026-06-07 08:35:12 +02:00
Stealthfox — a patched Firefox 150.0.1 for browser-fingerprint stealth,
shipped as a Playwright-compatible Python wrapper.
* Sync + async Stealthfox launcher (firefox_user_prefs, virtual desktop
on Windows, SOCKS5 auth via patched nsProtocolProxyService)
* fpforge: Bayesian fingerprint sampler over GPU / audio / fonts /
screen / TCP options / ~400 other navigator fields
* WebRTC stealth: srflx address swap, synthetic srflx fallback,
private-LAN host candidates — no real public IP leak via STUN
* GPU sandbox fix for FF150 alt-desktop regression
* Bezier-curve mouse motion baked into Juggler
Targets Windows x86_64 + Linux x86_64. Binary fetched on first run from
GitHub Release "firefox-1".
24 lines
634 B
Python
24 lines
634 B
Python
"""Same as basic.py but route through a SOCKS5 proxy."""
|
|
import os
|
|
|
|
from stealthfox import Stealthfox
|
|
|
|
|
|
def main() -> None:
|
|
proxy = {
|
|
"server": os.environ.get("STEALTHFOX_PROXY_SERVER", "socks5://127.0.0.1:1080"),
|
|
}
|
|
user = os.environ.get("STEALTHFOX_PROXY_USER")
|
|
password = os.environ.get("STEALTHFOX_PROXY_PASS")
|
|
if user and password:
|
|
proxy["username"] = user
|
|
proxy["password"] = password
|
|
|
|
with Stealthfox(proxy=proxy) as browser:
|
|
page = browser.new_page()
|
|
page.goto("https://httpbin.org/ip")
|
|
print(page.content()[:500])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|