Skip to main content

arkose-solver (Python)

Pure-Python Arkose Labs / FunCaptcha solver producing sup=1 suppressed tokens. The site's RSA public key is derived from the served api.js on every solve, so there is nothing to capture or pin.

pip install arkose-solver
from arkose_solver import Solver

s = Solver(
    surl="https://verify.example.com",
    public_key="00000000-0000-0000-0000-000000000000",
    site="https://www.example.com",
    proxy="http://user:pass@host:port",   # optional
)
res = s.solve()
print(res.token, res.suppressed)

solve() returns SolveResult(token, suppressed, timings). suppressed is True when the token carries sup=1.

Options

Solver(surl, public_key, site=None, rsa_public_key=None, proxy=None, user_agent=None, language="en-US", capi_mode="lightbox", title="", referer=None, origin=None, sitedata_location_href=None, document_referrer=None, data_exchange_url=None, data_exchange_regex=None)

rsa_public_key is only an override; leave it unset and it is extracted from api.js automatically.

Conformance

python tests/conformance.py

Checks every derivation against ../testvectors.json (generated by the Go implementation, which asserts each value against captured ground truth) and then verifies 20 freshly generated payloads are internally self-consistent — f, ife_hash, webgl_hash_webgl, network_info_rtt_type and screen_pixel_depth all recomputed from the payload itself.

Transport

Uses curl_cffi with Chrome impersonation. Arkose reads the TLS fingerprint (JA3/JA4), so requests/httpx will not do regardless of how correct the payload is.

Metadata

Release files for arkose-solver 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for arkose-solver 1.2.0
File Size Uploaded
arkose_solver-1.2.0.tar.gz 26.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for arkose-solver 1.2.0
File Interpreter ABI Platform
arkose_solver-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 53.9 kB

Release files / arkose_solver-1.2.0.tar.gz

Download URL arkose_solver-1.2.0.tar.gz
Size 26.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f1f07df624bf884e2a3189949ccd118701c21873541216d6f6ee0a1779a57c88
BLAKE2b-256 checksum
How to use checksums
96c53b6c2abfd7e7b9fd64a5384051a1e2070fa49d481967d2e1410c6dfbb050
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / arkose_solver-1.2.0-py3-none-any.whl

Download URL arkose_solver-1.2.0-py3-none-any.whl
Size 27.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d56287eef37bab8557e17b7a24b09dc594a31a8eb6e07c2704fa831ad498d46f
BLAKE2b-256 checksum
How to use checksums
6c9b1d853c26bdfc5082b8d4473410b0bada7e170f108d033baa2a4cca03386b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page