CLI tool to check HTTP/HTTPS/SOCKS5 proxies — liveness, latency, exit IP, speed, geo, rotation, blacklist
Project description
proxy-checker
CLI tool to check HTTP/HTTPS/SOCKS5 proxies — liveness, latency, exit IP, speed, geo enrichment, rotation detection, and DNSBL blacklist checks.
Install
pip install proxycheck-cli
Requires Python 3.11+.
Quick start
# Check proxies from file
proxycheck check proxies.txt
# Single proxy
proxycheck check http://user:pass@localhost:8888
# With geo, speed & blacklist
proxycheck check proxies.txt --geo --speed --blacklist
# Export results
proxycheck check proxies.txt -o results.json -f json
Options
| Flag | Default | Description |
|---|---|---|
SOURCE |
(required) | Proxy file path or inline proxy string |
-c, --concurrency |
50 | Concurrent checks |
-t, --timeout |
10 | Request timeout (s) |
--retries |
1 | Retries per proxy on network error |
--rotations |
— | Rotation mode — makes N requests to detect exit IP changes |
--speed |
off | Measure download speed (Mbps) |
--geo / --no-geo |
on | Enrich with country, city, ASN via ip-api.com |
--expect-country |
— | Expected country code (e.g. US, RU) |
--expect-type |
— | Expected proxy type: residential, datacenter, mobile |
--blacklist |
off | Check exit IPs against public DNSBL blacklists |
-o, --output |
— | Export path |
-f, --format |
table | Output: table, csv, json |
-q, --quiet |
off | Only show final summary |
Metrics per proxy
- Status — alive / dead
- Latency — response time in ms
- Exit IP — detected exit IP address
- Country / City / ASN — via ip-api.com (when
--geo) - Proxy type — residential, datacenter, mobile (when
--geo) - Speed — download speed in Mbps (when
--speed) - Blacklisted — status per DNSBL provider (when
--blacklist) - Matches — ✓ if exit IP matches expected country/type, ✗ if mismatch
Input formats
One proxy per line. Comments (#) and blank lines are ignored.
host:port
user:pass@host:port
http://host:port
http://user:pass@host:port
https://host:port
socks5://host:port
Privacy
Passwords are masked (user:***@host:port) in all output — table, CSV, and JSON.
DNSBL providers
zen.spamhaus.orgbl.blocklist.dednsbl.dronebl.org
Contributing
PRs welcome. Run tests before submitting:
pip install -e ".[dev]"
ruff check
ruff format --check
python -m pytest
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file proxycheck_cli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: proxycheck_cli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 13.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.14.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e940db048ab8163558d6bdab51c46bffc87ebd9a365a684a0fd06a54ef85b1fc
|
|
| MD5 |
4e0bde7a7cae1f08acd05350f010f1e4
|
|
| BLAKE2b-256 |
0b2918e870da72aa0aa8bb24e47018c1ecd3a4797629fdd4eb00bbcf99afeff2
|