Skip to main content

Anti-fingerprinting browser automation library built on a custom Firefox binary

Project description

Red-Eye Browser

Anti-fingerprinting browser automation library built on a custom Firefox 140 binary.

What is Red-Eye?

Red-Eye is a custom Firefox fork that spoofs browser fingerprints based on a JSON profile. The browser runs on Windows but can impersonate macOS, Linux, or Windows profiles — showing only the fonts, GPU, timezone, locale, and navigator data defined in the profile.

Fingerprints Spoofed

Fingerprint Details
User-Agent Full UA string from profile
Navigator platform, hardwareConcurrency, deviceMemory, maxTouchPoints, languages, language
Screen width, height, availWidth, availHeight, colorDepth, innerWidth, innerHeight, outerWidth, outerHeight
Fonts System fonts isolated — web sees only profile fonts (macOS 17/51, Linux 7-8/51, Windows 7-10/51 in CreepJS)
WebGL vendor, renderer, version, shadingLanguageVersion, unmasked vendor/renderer, extension list
Canvas Text metrics rounded to prevent font fingerprinting
Timezone ICU-level override — affects Intl.DateTimeFormat, Date, all JS time APIs
Locale Accept-Language header + navigator.languages consistent
HTTP Headers User-Agent header matches navigator.userAgent
CSS Media prefers-color-scheme, pointer, hover from profile
Math.random Seed influenced by profile hash
Worker Navigator Same spoofing as main thread
SVG Text Metrics rounded (same as Canvas 2D)

Installation

pip install red-eye-browser
redeye install

Usage

Async

import asyncio
from redeye import AsyncRedEye

async def main():
    async with AsyncRedEye() as browser:
        page = await browser.new_page()
        await page.goto("https://example.com")

asyncio.run(main())

Sync

from redeye import RedEye

with RedEye() as browser:
    page = browser.new_page()
    page.goto("https://example.com")

With Proxy

from redeye import AsyncRedEye

async with AsyncRedEye(proxy={
    "server": "http://host:port",
    "username": "user",
    "password": "pass"
}) as browser:
    page = await browser.new_page()
    await page.goto("https://example.com")

Persistent Context

import tempfile
from redeye import AsyncRedEye

async with AsyncRedEye(
    persistent_context=True,
    user_data_dir=tempfile.mkdtemp(),
    proxy={"server": "http://host:port", "username": "user", "password": "pass"}
) as context:
    page = context.pages[0]
    await page.goto("https://example.com")

CLI Commands

redeye install              # Latest browser binary download karo
redeye install 1.0.0        # Specific version
redeye status               # Installed version check karo
redeye uninstall            # Browser binary remove karo

Profile System

Each profile is a JSON file containing fingerprint data:

  • Windows profiles — impersonate Windows machine
  • macOS profiles — impersonate macOS machine
  • Linux profiles — impersonate Linux machine

50+ pre-built profiles included. Custom profiles supported.

Author

Rohit Prajapati — prajapatirohit8860@gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

red_eye_browser-1.0.1.tar.gz (105.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

red_eye_browser-1.0.1-py3-none-any.whl (895.8 kB view details)

Uploaded Python 3

File details

Details for the file red_eye_browser-1.0.1.tar.gz.

File metadata

  • Download URL: red_eye_browser-1.0.1.tar.gz
  • Upload date:
  • Size: 105.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.5

File hashes

Hashes for red_eye_browser-1.0.1.tar.gz
Algorithm Hash digest
SHA256 09f63fbefdb131e2d60a698e599824dfe786996338161260c5484f09404f3a53
MD5 8cdf4bc09accc678a3d34a68b5649941
BLAKE2b-256 72df3c62b48baf4400cb83f5d9639d82715642f633f23100a3e81162ae634a91

See more details on using hashes here.

File details

Details for the file red_eye_browser-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for red_eye_browser-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 79de42c1160fba5b29bb1d93db3ff4ea921bbd48fa6e55f5617ca2a05b453b41
MD5 d5edbe0cdbb9fdd7cf764469ab54be94
BLAKE2b-256 c092a309bc4d286e96943e952ba87c3b53857b53e7febaa2e07733a581e64c67

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page