Skip to main content

HTTP/HTTPS proxy that impersonates browser TLS fingerprints using curl_cffi

Project description

impersonate-proxy

pypi python build tests license impersonate-proxy logo

HTTP/HTTPS proxy that impersonates browser TLS fingerprints using curl_cffi that can be effective in avoiding blocks against non-browser clients.

[!NOTE] This project started as a fork of hauxir/tls-impersonate-proxy and has now evolved beyond a pull request to merge. This impersonate-proxy project is maintained at psaintelligence/impersonate-proxy.

Design Philosophy

impersonate-proxy does not attempt to manually re-implement browser headers or replicate curl-impersonate in Python. Instead, it acts as a lightweight adapter:

  • Strips conflicting non-browser client headers (e.g. User-Agent: python-httpx) so native curl-impersonate defaults shine through.
  • Preserves request payload, auth, and shape semantics (Cookie, Authorization, Host, Sec-Fetch-* for XHR).
  • Delegates all browser TLS fingerprinting and header generation directly to curl-impersonate via curl_cffi.

Pypi: pypi.org/project/impersonate-proxy

GHCR: github.com/psaintelligence/impersonate-proxy/pkgs/container


Quick Start (Docker)

Spin up the proxy container:

docker run --rm -p 8899:8899 \
  -v /tmp/impersonate-certs:/root/.config/impersonate-proxy \
  ghcr.io/psaintelligence/impersonate-proxy:latest

Once started, configure your client to trust the CA and use the proxy:

# Export the generated CA cert to trust the proxy
export SSL_CERT_FILE=/tmp/impersonate-certs/ca.crt

# Issue request through the proxy
curl --silent -x http://127.0.0.1:8899 https://tls.browserleaks.com/json

Quick Start (pip / uv)

Install and start the proxy locally:

# Install via pipx from pypi
pipx install impersonate-proxy

# Or install via uv from source
uv pip install git+https://github.com/psaintelligence/impersonate-proxy.git

# Start the proxy (default: 127.0.0.1:8899)
impersonate-proxy

Documentation

Full guides and configuration details are available at psaintelligence.github.io/impersonate-proxy.

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

impersonate_proxy-0.4.1.tar.gz (30.8 kB view details)

Uploaded Source

Built Distribution

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

impersonate_proxy-0.4.1-py3-none-any.whl (17.4 kB view details)

Uploaded Python 3

File details

Details for the file impersonate_proxy-0.4.1.tar.gz.

File metadata

  • Download URL: impersonate_proxy-0.4.1.tar.gz
  • Upload date:
  • Size: 30.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for impersonate_proxy-0.4.1.tar.gz
Algorithm Hash digest
SHA256 63de48b3779f1529d2ee78652da5ad1dc4101fbaa4421f6e8e5cc74bb1e38680
MD5 dbbae19d24ef9d620829425c4841cb72
BLAKE2b-256 62a23097af63fd7ac2f00f38677d9bc170853c3cd79c6dc85a41cc4ad20d631e

See more details on using hashes here.

Provenance

The following attestation bundles were made for impersonate_proxy-0.4.1.tar.gz:

Publisher: publish.yml on psaintelligence/impersonate-proxy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file impersonate_proxy-0.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for impersonate_proxy-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 01e3583855b4caa99bd2ae2c9ea26db1a8d741206a4219eb1494e3d182c6a3f6
MD5 1d9aa3f779b6d72a2bd3686f6a2f613d
BLAKE2b-256 faa5ad716f85ff7c47b59fe317f3e21aa9c552919ebea7bc43930768a3fa2fc8

See more details on using hashes here.

Provenance

The following attestation bundles were made for impersonate_proxy-0.4.1-py3-none-any.whl:

Publisher: publish.yml on psaintelligence/impersonate-proxy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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