|
|
|
@@ -22,17 +22,17 @@ you want; importing the package never fails because an extra is missing.
|
|
|
|
|
`requirements.txt` (pick the extra you need):
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
aioweb_tls[curl] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.1
|
|
|
|
|
aioweb_tls[noble] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.1
|
|
|
|
|
aioweb_tls[all] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.1
|
|
|
|
|
aioweb_tls[curl] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.2
|
|
|
|
|
aioweb_tls[noble] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.2
|
|
|
|
|
aioweb_tls[all] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.2
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Direct:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
pip install "aioweb_tls[curl] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.1"
|
|
|
|
|
pip install "aioweb_tls[noble] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.1"
|
|
|
|
|
pip install "aioweb_tls[all] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.1"
|
|
|
|
|
pip install "aioweb_tls[curl] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.2"
|
|
|
|
|
pip install "aioweb_tls[noble] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.2"
|
|
|
|
|
pip install "aioweb_tls[all] @ git+ssh://git@git.rethinkstudios.io/rethink-public/aioweb_tls.git@v0.1.2"
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
- `[curl]` → curl_cffi backend · `[noble]` → noble_tls backend · `[all]` → both.
|
|
|
|
@@ -55,8 +55,11 @@ async with TLSSession(backend=CurlCffi(impersonate="chrome"), proxies={"https":
|
|
|
|
|
print(resp.json()["tls"]["ja3"])
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
- `CurlCffi(impersonate="chrome")` sets the forged profile; override per call by
|
|
|
|
|
passing `impersonate=` to any request method.
|
|
|
|
|
- `CurlCffi(impersonate="chrome")` sets the forged profile; override it per call by
|
|
|
|
|
passing `impersonate=` to the low-level `request()` (which forwards `**kwargs` to the
|
|
|
|
|
backend). `request_with_retries` has a fixed signature and does **not** accept extra
|
|
|
|
|
backend kwargs — passing `impersonate=` there raises `TypeError`; set the profile on
|
|
|
|
|
the `CurlCffi` instance for the retrying path.
|
|
|
|
|
- curl_cffi forges JA3/JA4 + HTTP/2 fingerprints via the bundled curl-impersonate binary.
|
|
|
|
|
|
|
|
|
|
## noble backend
|
|
|
|
|