Cloudflyer
Cloudflyer is a Python service that helps solve various web security challenges including Cloudflare challenges, Turnstile captchas, and reCAPTCHA Invisible.
Features
- Cloudflare challenge solver
- Turnstile captcha solver
- reCAPTCHA Invisible solver
- Proxy support (HTTP/SOCKS)
- Concurrent task processing
- RESTful API server
Installation
pip install cloudflyer
Quick Start
Example Script
# Run example cloudflare solving with proxy
python test.py cloudflare -x socks5://127.0.0.1:1080
# Run example turnstile solving
python test.py turnstile
# Run example recaptcha invisible solving
python test.py recaptcha
Solver Server
cloudflyer -K YOUR_CLIENT_KEY
Options:
-K, --clientKey: Client API key (required)-M, --maxTasks: Maximum concurrent tasks (default: 1)-P, --port: Server listen port (default: 3000)-H, --host: Server listen host (default: localhost)-T, --timeout: Maximum task timeout in seconds (default: 120)
Docker
Docker:
docker run -it --rm -p 3000:3000 jackzzs/cloudflyer -K YOUR_CLIENT_KEY
Docker Compose:
version: 3
services:
cloudflyer:
image: jackzzs/cloudflyer
container_name: cloudflyer
restart: unless-stopped
ports:
- 3000:3000
API Endpoints for Server
Create Task
Request:
POST /createTask
Content-Type: application/json
{
"clientKey": "your_client_key",
"type": "CloudflareChallenge",
"url": "https://example.com",
"userAgent": "...",
"proxy": {
"scheme": "socks5",
"host": "127.0.0.1",
"port": 1080
},
"content": false
}
- Field
userAgentandproxyis optional. - Supported task types:
CloudflareChallenge,Turnstile,RecaptchaInvisible - For
Turnstiletask,siteKeyis required. - For
RecaptchaInvisibletask,siteKeyandactionis required. - For
CloudflareChallengetask, setcontentto true to get page html inresponse.
Response:
{
"taskId": "21dfdca6-fbf5-4313-8ffa-cfc4b8483cc7"
}
Get Task Result
Request:
POST /getTaskResult
Content-Type: application/json
{
"clientKey": "your_client_key",
"taskId": "21dfdca6-fbf5-4313-8ffa-cfc4b8483cc7"
}
Response:
{
"status": "completed",
"result": {
"success": true,
"code": 200,
"response": {
...
},
"data": {
"type": "CloudflareChallenge",
...(input)
}
}
}
For Turnstile task:
"response": {
"token": "..."
}
For CloudflareChallenge tasks:
"response": {
"cookies": {
"cf_clearance": "..."
},
"headers": {
"User-Agent": "..."
},
"content": "..."
}
For RecaptchaInvisible tasks:
"response": {
"token": "..."
}
WSSocks
WSSocks is a socks proxy agent for intranet penetration via websocket. It can be used for connecting to the user's network.
For agent proxy:
wssocks server -r -t example_token -a -dd
For user side (using proxy):
wssocks client -u https://ws.zetx.tech -r -t example_token -T 1 -c example_connector_token -dd -E -x socks5://127.0.0.1:1080
For solver side:
POST /createTask
Content-Type: application/json
{
"clientKey": "your_client_key",
"type": "CloudflareChallenge",
"url": "https://example.com",
"userAgent": "...",
"wssocks": {
"url": "https://ws.zetx.tech",
"token": "example_connector_token"
}
}
Metadata
Release files for cloudflyer 1.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cloudflyer-1.0.5.tar.gz | 224.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cloudflyer-1.0.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 437.1 kB
Release files / cloudflyer-1.0.5.tar.gz
| Download URL | cloudflyer-1.0.5.tar.gz |
|---|---|
| Size | 224.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f12be778925dde19b504d960ee018d1a212e33926cb108af16dc91e643f48366
|
|
BLAKE2b-256 checksum How to use checksums |
87642c03ac5d9386cb67f9b7930f5fcc4bda10aaf11c4b2cab66650b9b1573f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 6, 2025.
Transparency logRelease files / cloudflyer-1.0.5-py3-none-any.whl
| Download URL | cloudflyer-1.0.5-py3-none-any.whl |
|---|---|
| Size | 212.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
eef895722156c933d8040043d18d5c3a5aea0c3c626bb3c25cb6c12c258485b7
|
|
BLAKE2b-256 checksum How to use checksums |
4b46b1a27204c3ba12a62a32e7d4d58d7660472494e8544cd149001921237d05
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 6, 2025.
Transparency log