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.4.tar.gz (125.4 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.4-py3-none-any.whl (905.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: red_eye_browser-1.0.4.tar.gz
  • Upload date:
  • Size: 125.4 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.4.tar.gz
Algorithm Hash digest
SHA256 a8c6f16766b9671e24cfc991bd22b459d0a6b175a35a5c6cfc16c8e4dea99f56
MD5 d973e03fa8b349bac46904c8fbe8da66
BLAKE2b-256 1d60971f353f4c09906a552f2752b867a5db28cd93fdcc07990bbdd0a0bec013

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for red_eye_browser-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 5f84359b931a9d41cbb0db54208c9d1c274ee804988ee88ca5aa87bde171e103
MD5 436522e0e232325d12dc41e5c6024917
BLAKE2b-256 b26e7cf5ef50cd844e107c217c7106e531775c46f434307336558ac0abb82ef4

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