Files
camoufox/pythonlib

Camoufox Python Interface

Lightweight wrapper around the Playwright API to help launch Camoufox.

Note

All the the latest documentation is avaliable here.


What is this?

This Python library wraps around Playwright's API to help automatically generate & inject unique device characteristics (OS, CPU info, navigator, fonts, headers, screen dimensions, viewport size, WebGL, addons, etc.) into Camoufox.

It uses BrowserForge under the hood to generate fingerprints that mimic the statistical distribution of device characteristics in real-world traffic.

In addition, it will also calculate your target geolocation, timezone, and locale to avoid proxy protection (see demo).


Installation

First, install the camoufox package:

pip install -U camoufox[geoip]

The geoip parameter is optional, but heavily recommended if you are using proxies. It will download an extra dataset to determine the user's longitude, latitude, timezone, country, & locale.

Next, download the Camoufox browser:

Windows

camoufox fetch

MacOS & Linux

python3 -m camoufox fetch

To uninstall, run camoufox remove.


Installing multiple Camoufox versions & from other repos

UI Manager

Manage installed browsers, active version, IP geolocation databases, and package info. Basically a Qt front end for the Python CLI tool.

More updates on it will be coming soon.

ui-screenshot

To use the gui, install Camoufox with the [gui] extra:

pip install 'camoufox[gui]'

To launch:

camoufox gui

CLI Mananger

Demonstration

https://github.com/user-attachments/assets/992b1830-6b21-4024-9165-728854df1473

See help message
$ python -m camoufox --help

 Usage: python -m camoufox [OPTIONS] COMMAND [ARGS]...

╭─ Options ─────────────────────────────────────────────────────────────────────────╮
│ --help  Show this message and exit.                                               │
╰───────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ────────────────────────────────────────────────────────────────────────╮
│ active    Print the current active version                                        │
│ fetch     Install the active version, or a specific version.                      │
│ gui       Launch the Camouman GUI (requires PySide6)                              │
│ list      List Camoufox versions.                                                 │
│ path      Print the install directory path                                        │
│ remove    Remove installed version(s)                                             │
│           Or, pass a specifier to remove directly:                                │
│             camoufox remove official/stable/134.0.2-beta.20                       │
│ server    Launch a Playwright server                                              │
│ set       Interactive selector for versions and settings                          │
│           Or, pass a specifier to activate directly:                              │
│               Pin version:          camoufox set official/stable/134.0.2-beta.20  │
│               Auto-update channel:  camoufox set official/stable                  │
│ sync      Sync available versions from remote repositories.                       │
│ test      Open the Playwright inspector                                           │
│ version   Display version info                                                    │
╰───────────────────────────────────────────────────────────────────────────────────╯

sync

Pull a list of release assets from GitHub.

> camoufox sync
Syncing repositories...
  Official... 24 versions
  CoryKing... 2 versions

Synced 26 versions from 2 repos.

set

Choose a version channel or pin a specific version. Can also be called with a specifier to activate directly.

Interactive selector:

> camoufox set

You can also pass a specifier to pin a specific version or choose a channel to follow directly. This will pull the latest stable version from the official repo on camoufox fetch.

> camoufox set official/stable  # default setting

Follow latest prerelease version from the official repo:

> camoufox set official/prerelease

Pin a specific version:

> camoufox set official/stable/134.0.2-beta.20

active

Prints the current active version string:

> camoufox active
official/stable
> camoufox set coryking/stable/142.0.1-fork.26
Pinned: coryking/stable/142.0.1-fork.26
Run 'camoufox fetch' to install.

> camoufox active
coryking/stable/142.0.1-fork.26 (not installed)

fetch

Install the active version, or a specific version. This will also automatically sync repository assets.

> camoufox fetch                          # install active channel's latest
> camoufox fetch official/135.0-beta.25   # install a specific version

list

List installed or all available Camoufox versions as a tree.

> camoufox list          # show installed versions
> camoufox list all      # show all available versions from synced repos
> camoufox list --path   # show full install paths

remove

Remove installed browser versions and/or GeoIP data. Opens an interactive selector, or pass a specifier to remove directly.

Interactively select a specific version to remove:

> camoufox remove  # interactive selection
Pip package:    v0.5.0
Channel:        official/prerelease (Version pinned)
Version:        v146.0.1-beta.25 
Last repo sync: 2026-02-07 04:36

Remove a specific version:

> camoufox remove official/stable/134.0.2-beta.20

Remove all:

> camoufox remove --all
> camoufox remove --all -y  # skip confirmation prompts

version

Display the Python package version, active browser version, channel, and update status.

> camoufox version
Pip package:       v0.5.0
Channel:           official/prerelease (Version pinned)
Version:           v146.0.1-beta.25 
Last repo sync:    2026-02-07 04:36

path

Print the install directory path.

> camoufox path
/home/name/.cache/camoufox

test

Open the Playwright inspector for debugging.

> camoufox test
> camoufox test https://example.com

server

Launch a remote Playwright server.

> camoufox server

Usage

All of the latest stable documentation is avaliable at camoufox.com/python.