Skip to main content

Fast async proxy checker — HTTP/HTTPS/SOCKS4/SOCKS5, 500+ proxies/minute

Project description

proxy-checker

PyPI Downloads License Python Stars

Fast async proxy validator — HTTP/HTTPS/SOCKS4/SOCKS5, 500+ proxies/minute.

Checks latency, anonymity level, and country. Works as a library or CLI tool.


Installation

pip install fast-proxy-checker          # HTTP/HTTPS support
pip install "fast-proxy-checker[socks]" # + SOCKS4/SOCKS5 support

Quick Start

CLI

# Check proxies from a file
proxy-checker check proxies.txt

# Check SOCKS5 proxies with custom concurrency
proxy-checker check proxies.txt --type socks5 --threads 200

# Export results to CSV
proxy-checker check proxies.txt --output results.csv --format csv

# Fetch fresh proxies from public sources and check them
proxy-checker fetch --count 100 --type http
proxy-checker fetch --count 50 --type socks5 --output alive.txt

Python API

import asyncio
from proxy_checker import check_proxies, ProxyType

async def main():
    proxies = ["1.2.3.4:8080", "5.6.7.8:3128"]
    async for result in check_proxies(proxies, ProxyType.HTTP, concurrency=100):
        if result.is_alive:
            print(f"{result.address}  {result.latency_ms}ms  [{result.country_code}]")

asyncio.run(main())

Features

  • Async — built on asyncio + aiohttp, checks hundreds of proxies in parallel
  • All protocols — HTTP, HTTPS, SOCKS4, SOCKS5
  • Anonymity detection — transparent / anonymous / elite
  • Country detection — via ip-api.com
  • Multiple output formats — TXT, CSV, JSON
  • Free proxy lists — auto-updated daily (see proxies/)
  • CLI + library — use from terminal or import in your code

💡 Need reliable proxies? Free lists work for testing, but production scraping needs stable providers. Check ProxyStats.io — independent benchmarks of residential & datacenter proxy providers with real-world latency, success rate, and cost data.


Free Proxy Lists (updated daily)

Auto-validated by this tool via GitHub Actions — only working proxies included:

List Type Raw URL
proxies/http.txt HTTP raw.githubusercontent.com/ProxyStats/proxy-checker/main/proxies/http.txt
proxies/socks4.txt SOCKS4 raw.githubusercontent.com/ProxyStats/proxy-checker/main/proxies/socks4.txt
proxies/socks5.txt SOCKS5 raw.githubusercontent.com/ProxyStats/proxy-checker/main/proxies/socks5.txt

Free proxies are unstable by nature — IPs die within hours. For production workloads see ProxyStats.io.

Output Example

  proxy-checker  checking 500 proxies  (concurrency=500, timeout=10s)

  OK  45.77.31.10:8080           234.1ms  elite         [US]
  OK  103.152.112.157:80         891.2ms  anonymous     [ID]
  OK  181.78.18.1:999            445.7ms  elite         [CO]
  ...

  Results: 87 alive / 413 dead / 500 total

  Need reliable proxies? → https://proxystats.io

CLI Reference

Usage: proxy-checker [OPTIONS] COMMAND [ARGS]...

Commands:
  check  Check proxies from a file
  fetch  Fetch free proxies from public sources and check them

Options for `check`:
  FILE                    Path to proxy list (one proxy per line)
  --type [http|https|socks4|socks5]   Default: http
  --threads INTEGER       Concurrency  [default: 500]
  --timeout FLOAT         Timeout per proxy in seconds  [default: 10.0]
  --output PATH           Save results to file
  --format [txt|csv|json] Output format  [default: txt]
  --all                   Show dead proxies too

Proxy List Format

One proxy per line. Scheme prefix is optional:

1.2.3.4:8080
socks5://10.0.0.1:1080
http://user:pass@1.2.3.4:3128

Python API Reference

from proxy_checker import check_proxy, check_proxies, ProxyType, ProxyResult

# Check a single proxy
result: ProxyResult = await check_proxy("1.2.3.4", 8080, ProxyType.HTTP)

# Check many proxies (async generator, yields as results arrive)
async for result in check_proxies(
    proxies,           # list of strings
    proxy_type=ProxyType.HTTP,
    concurrency=500,
    timeout=10.0,
):
    print(result.is_alive, result.latency_ms, result.country)

ProxyResult fields: host, port, proxy_type, is_alive, latency_ms, anonymity, country, country_code, error

Contributing

See CONTRIBUTING.md. PRs welcome.

git clone https://github.com/ProxyStats/proxy-checker
cd proxy-checker
pip install -e ".[socks]"
pytest tests/

License

MIT — see LICENSE


⭐ Star this repo if it helped you — it helps others discover it.

Made by ProxyStats — independent proxy benchmarks.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fast_proxy_checker-1.0.2.tar.gz (71.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fast_proxy_checker-1.0.2-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file fast_proxy_checker-1.0.2.tar.gz.

File metadata

  • Download URL: fast_proxy_checker-1.0.2.tar.gz
  • Upload date:
  • Size: 71.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fast_proxy_checker-1.0.2.tar.gz
Algorithm Hash digest
SHA256 dcaeb25efe668f557bbe68eb69e28bb50ab16cda2d9277e79cec05fc731dbc8b
MD5 71984515fd5ee02de2505fc2f87d3baa
BLAKE2b-256 fb9cd5b216b7acaad097327065b41eba277137add07547147cd18842fa28c11c

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_proxy_checker-1.0.2.tar.gz:

Publisher: publish.yml on ProxyStats/proxy-checker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fast_proxy_checker-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for fast_proxy_checker-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a65a50a5352713502219a759d1adcf02102661c5099d0ad0e1bc93fcc79f31b5
MD5 02cc3574a794bbf1845d9aef990660dd
BLAKE2b-256 5b1706e588fe08905d24682626d2e1d5f47d3e5b1aa0f13892888c7c3756b30f

See more details on using hashes here.

Provenance

The following attestation bundles were made for fast_proxy_checker-1.0.2-py3-none-any.whl:

Publisher: publish.yml on ProxyStats/proxy-checker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page