Antidetect browser for Python
The Python library ships the browser engine and the fingerprint library and runs without the desktop app. Use it inside a scraper, a CI job or a server-side worker.
Package: PyPI · shardx (opens in a new tab)
Install
pip install shardxQuick start
# pip install shardx (illustrative; see the SDK readme)
import asyncio
from shardx import ShardX
PROXY = "socks5://user:pass@host:1080"
async def main():
sdk = ShardX()
profile = sdk.create_profile("win-rtx4060")
async with sdk.session(profile, proxy=PROXY) as browser:
page = await browser.contexts[0].new_page()
await page.goto("https://browserleaks.com/quic")
print(await page.title())
asyncio.run(main())What the SDK does for you
- Downloads the engine and the 220-profile library on first use and caches them by ETag.
- Probes the proxy for UDP support and turns QUIC on or off accordingly.
- Resolves timezone, locale and geolocation from the proxy exit country before launch.
- Randomizes CPU, RAM and platform version once per saved profile so hardware stays coherent.
The Python SDK does not depend on the desktop app. On first use it downloads the patched Chromium 152 engine, the Widevine CDM and the 220-profile fingerprint library into a local cache, then launches isolated browser sessions on demand.
Sessions are driven by patchright, a stealth-patched Playwright, so sdk.session() hands back a ready Browser with no manual CDP plumbing. Supported hosts are macOS arm64, Windows x64 and Linux x64. When launching as root or inside Docker, pass --no-sandbox and --disable-dev-shm-usage through extra_args.