Skip to content

Releases: wyattowalsh/proxywhirl

v0.3.3

03 Mar 07:41

Choose a tag to compare

See CHANGELOG.md for full release notes.

Release v0.3.2

23 Feb 06:35

Choose a tag to compare

proxywhirl v0.3.2

  • fix(fetchers): default PlainTextParser to skip malformed upstream lines instead of failing entire source fetches
  • add regression test covering concatenated proxy lines and ports >65535 from real-world sources
  • include prior hideip.me parser format fix in a released version for Colab users

Release v0.3.1

23 Feb 05:19

Choose a tag to compare

proxywhirl v0.3.1

Changes

See CHANGELOG for details.

Installation

pip install proxywhirl==0.3.1

Release v0.3.0

16 Feb 21:43

Choose a tag to compare

proxywhirl v0.3.0

Highlights

  • Retry & Failover Logic: Automatic retry with exponential backoff, circuit breaker pattern, intelligent proxy failover selection, configurable retry policies, 9 new REST API endpoints
  • Intelligent Rotation Strategies: 7 advanced strategies (round-robin, random, weighted, least-used, performance-based, session-persistence, geo-targeted), strategy composition, hot-swapping
  • Web & Infrastructure: CSP security header, CDN cache optimization, PWA improvements, stale file cleanup

Installation

pip install proxywhirl==0.3.0

See CHANGELOG for full details.

Release v0.1.2

14 Feb 01:05

Choose a tag to compare

proxywhirl v0.1.2

Changes

See CHANGELOG for details.

Installation

pip install proxywhirl==0.1.2

Release v0.1.1

14 Jan 22:52

Choose a tag to compare

proxywhirl v0.1.1

Changes

See CHANGELOG for details.

Installation

pip install proxywhirl==0.1.1

v0.1.0 - Initial Release

10 Jan 23:35

Choose a tag to compare

proxywhirl v0.1.0

🎉 Initial public release!

Installation

# Using uv (recommended)
uv pip install proxywhirl
uv add proxywhirl

# Using uvx (run without installing)
uvx proxywhirl --help
uvx proxywhirl fetch

# Using pip
pip install proxywhirl

Features

  • 10+ Rotation Strategies: Round-robin, weighted, performance-based, geo-targeted, session persistence, cost-aware, and more
  • Multi-Protocol Support: HTTP, HTTPS, SOCKS4, SOCKS5
  • 82+ Built-in Sources: Auto-fetch from free proxy lists
  • Smart Validation: Parallel validation with configurable timeouts
  • Circuit Breaker: Automatic failure detection and recovery
  • Retry with Backoff: Configurable retry policies with jitter
  • SQLite Persistence: Save and load proxy pools
  • Three-Tier Cache: L1 memory, L2 file, L3 SQLite
  • Rate Limiting: Per-endpoint and global rate limits
  • REST API: FastAPI-based HTTP interface
  • MCP Server: Model Context Protocol integration (Python 3.10+)
  • Rich CLI: Interactive terminal UI with Typer
  • Browser Rendering: Playwright support for JS-heavy sources

Quick Start

from proxywhirl import ProxyRotator

rotator = ProxyRotator()
rotator.fetch()  # Auto-fetch from 82+ sources

proxy = rotator.get_proxy()
response = rotator.get("https://httpbin.org/ip")

Links