Skip to content

primp

504 1 3 MIT
1.2.2 (3 Apr 2026) Jun 01 2024 7.1 million (month)

Primp is a Python HTTP client that impersonates real web browsers by replicating their TLS fingerprints, HTTP/2 settings, and header ordering. It is a lightweight alternative to curl-cffi for bypassing TLS and HTTP fingerprinting-based bot detection.

Key features include:

  • Browser impersonation Can impersonate Chrome, Firefox, Safari, Edge, and OkHttp clients by replicating their exact TLS fingerprints (JA3/JA4), HTTP/2 frame settings, header ordering, and other connection-level characteristics.
  • HTTP/2 support Full HTTP/2 support with configurable settings that match real browser behavior.
  • Lightweight Smaller and simpler than curl-cffi while providing similar impersonation capabilities. Built on Rust for performance.
  • Familiar API Provides a requests-like API with Session support, making it easy to adopt for developers familiar with the Python requests library.
  • Proxy support HTTP and SOCKS5 proxy support with authentication.
  • Cookie management Automatic cookie handling across requests within a session.

Primp fills a similar niche to curl-cffi and hrequests — HTTP clients designed to avoid TLS/HTTP fingerprinting — but takes a Rust-powered approach for better performance. It is particularly useful when you need to bypass bot detection that relies on connection-level fingerprinting without using a full browser.

Highlights


bypasstls-fingerprinthttp-fingerprinthttp2fast

Example Use


```python import primp

Create a session that impersonates Chrome

session = primp.Session(impersonate="chrome_131")

Make requests - TLS fingerprint matches real Chrome

response = session.get("https://example.com") print(response.status_code) print(response.text)

POST with JSON data

response = session.post( "https://api.example.com/data", json={"key": "value"}, )

With proxy

session = primp.Session( impersonate="firefox_133", proxy="http://user:pass@proxy.example.com:8080", ) response = session.get("https://example.com")

Different browser impersonation profiles

for browser in ["chrome_131", "firefox_133", "safari_18", "edge_131"]: session = primp.Session(impersonate=browser) resp = session.get("https://tls.peet.ws/api/all") print(f"{browser}: {resp.json()['ja3_hash']}") ```

Alternatives / Similar


5,944 v0.6.1 (2024-03-02 18:08:29 ago) Feb 23 2022 compare
1,751 0.7.1 (2024-07-13 09:07:25 ago) Feb 23 2022 compare
1,001 0.9.2 (2024-12-01 02:55:27 ago) Feb 23 2022 compare
53,883 2.33.1 (2026-03-30 16:09:13 ago) Feb 14 2011 compare
15,183 0.28.1 (2024-12-06 15:37:21 ago) Jul 26 2019 compare
16,395 3.13.5 (2026-03-31 21:56:30 ago) Jul 26 2019 compare
1,147 7.45.7 (2025-09-24 13:35:56 ago) Feb 25 2003 compare
12,519 3.5.5 (2024-02-17 17:18:36 ago) Sep 04 2020 compare
camoufox new
7,089 0.4.11 (2025-01-29 09:33:18 ago) Mar 01 2024 compare
nodriver new
4,003 0.48.1 (2025-11-09 05:57:23 ago) Jan 15 2024 compare
605 25.5.0 (2025-06-03 03:42:30 ago) Dec 28 2012 compare
4,321 4.0.97 (2026-01-06 07:45:54 ago) Oct 01 2023 compare
718 1.9.4 (2024-10-22 01:41:19 ago) Jul 22 2022 compare
pydoll new
- 0.0.0 (2025-02-01 00:00:00 ago) Jun 01 2024 compare

Other Languages

8,860 3.3.2 (2023-11-30 14:10:12 ago) Dec 28 2012 compare
108,987 1.15.0 (2026-04-08 16:09:38 ago) Aug 29 2014 compare
got
14,897 15.0.1 (2026-04-08 16:15:35 ago) Mar 27 2014 compare
1,631 3.5.0 (2026-03-12 22:24:55 ago) Dec 11 2011 compare
16,610 10.1.1 (2024-10-22 17:26:05 ago) Aug 22 2011 compare
5,927 2.14.1 (2026-02-07 15:17:15 ago) Dec 19 2009 compare
94,086 2.11.2 (2023-04-11 04:13:00 ago) May 29 2018 compare
1,172 1.4.2 (2026-03-20 19:18:25 ago) Oct 31 2009 compare
707 2.9.0 (2025-02-22 01:13:49 ago) Jul 25 2009 compare
5,889 0.24.2 (2026-01-14 22:54:36 ago) Jul 25 2009 compare
7,293 3.3.6 (2023-03-01 12:19:02 ago) May 15 2018 compare
4,131 1.6.0 (2026-03-10 12:58:26 ago) Oct 06 2009 compare
985 1.4.8 (2023-08-15 11:00:00 ago) May 06 2012 compare
23,447 7.10.0 (2025-08-23 22:36:01 ago) Nov 14 2011 compare
1,517 1.0.5 (2024-02-12 21:10:00 ago) Nov 22 2014 compare
378 18.1.0 (2025-07-24 23:01:15 ago) Aug 06 2011 compare
1,219 1.1.7 (2020-08-31 21:38:00 ago) Oct 25 2009 compare
2,033 v8.0.8 (2026-03-30 15:14:47 ago) Apr 28 2019 compare
mechanize new
4,440 2.14.0 (2025-01-05 18:30:46 ago) Jul 25 2009 compare
908 1.1.3 (2026-03-05 00:04:35 ago) Sep 25 2013 compare
req
4,781 v3.57.0 (2025-12-16 09:07:40 ago) Nov 20 2023 compare
11,632 v2.17.2 (2026-02-14 22:43:18 ago) Aug 05 2024 compare
505 1.1.4 (2020-02-07 22:04:51 ago) Apr 20 2010 compare
107 1.6.0 (2024-07-19 19:50:00 ago) Nov 09 2016 compare
3,577 v2.0.17 (2025-12-12 17:47:19 ago) Oct 06 2013 compare
1,924 1.3.0 (2024-09-23 13:16:34 ago) Nov 11 2011 compare
1,803 1.0.0 (2024-05-01 11:33:16 ago) Apr 14 2012 compare
165 2.3.0 (2021-03-18 00:10:00 ago) Dec 22 2019 compare
3,104 0.17.0 (2026-03-25 01:20:02 ago) Mar 20 2015 compare
Was this page helpful?