ProxyBroker is a free Python tool that finds public proxies on dozens of sites and checks them. It can also hand them out through a local proxy that rotates them. Its last release, 0.3.2, came out on March 12, 2019, and pip install proxybroker still installs it: PyPI counted 4,843 downloads in the past month. On Python 3.10 and newer it stops with a TypeError, and every Python version that still gets fixes is 3.11 or newer.
A fork, ProxyBroker2, carries the project on. On October 23, 2026, we asked ProxyBroker's 35 built-in sources once each, and 7 still listed proxies on the page it reads. This page sets out the record, the error, what its defaults still reach, and two ways to get checked free proxies today. We did not install or run ProxyBroker: everything about its behavior comes from its code and its issue tracker.
What ProxyBroker does
ProxyBroker reads lists of free proxies from built-in sources, checks each proxy, and keeps the ones that work. Its README promises "more than 7000 working proxies from ~50 sources" and filters "by type, anonymity level, response time, country and status in DNSBL". It can also run as a local proxy that spreads your requests over the proxies it found.
To grade anonymity it uses judges. A judge is a page that shows back the request it received, and ProxyBroker checks whether your real address appears in what reached it. Its defaults name eight web judges and two mail servers.
Why pip install proxybroker breaks on current Python
Python 3.10, released on October 4, 2021, removed the loop parameter from most of asyncio's high-level API. ProxyBroker 0.3.2 still passes it. Its api.py creates asyncio.Queue(loop=self._loop) on lines 65 and 97, and its server.py passes loop= to asyncio.gather. On Python 3.10 or newer, the first of those lines stops the program.
Users have reported it since August 2022:
TypeError: As of 3.10, the *loop* parameter was removed from Queue() since it is no longer necessary
The issues that report it are still open. Every Python version that still gets fixes is 3.11 or newer. Python 3.9 reached its end of life on October 31, 2025, and Python 3.15 came out on October 9, 2026. A fresh install on a supported Python cannot run 0.3.2.
Oct 11, 2015
Repository created
Jan 20, 2016
First release on PyPI
0.1b4
Mar 12, 2019
Version 0.3.2, the last release
Apr 27, 2020
The fork ProxyBroker2 starts
Oct 4, 2021
Python 3.10 removes asyncio's loop parameter
Aug 3, 2022
Issue #194 reports the TypeError
still open
Jan 31, 2023
proxybroker2 2.0.0a4 on PyPI
Oct 31, 2025
Python 3.9 reaches end of life
May 9, 2026
ProxyBroker2 v2.0.0b3
Oct 23, 2026
Our check: 7 of 35 sources list proxies
What its built-in sources and judges answer today
A working install would still depend on outside sites. ProxyBroker's code lists 35 sources, and its own comments say the largest once yielded 60,000 proxies. We asked each source once from our server on October 23, 2026, reading robots.txt first:
Seven sources still list proxies on the page ProxyBroker reads first. Three more forward to the same site as one of those seven, so they add nothing new. Ten answer without a list on that page. Some changed, and some put their list behind a form or a second page that ProxyBroker's parser was written for. Thirteen give an error or no answer, and robots.txt closes two.
Of the eight web judges, three still echo a request: httpbin.org over http and https, and azenv.net. Four give an error or no answer, and robots.txt closes one.
ProxyBroker2, the maintained fork
In August 2022, the fork's author opened an issue in ProxyBroker titled "Not maintained. USE proxybroker2 INSTEAD." The fork started on April 27, 2020. Its README calls it "The modernized successor to ProxyBroker with Python 3.10-3.14 support", and its v2.0.0b3 came out on May 9, 2026.
Install it from GitHub or as a Docker image:
pip install -U git+https://github.com/bluet/proxybroker2.git
docker pull bluet/proxybroker2
The proxybroker2 package on PyPI is 2.0.0a4 from January 31, 2023, older than these betas. If you need ProxyBroker's local rotating server, the fork is the place to get it. It still finds its proxies on public list sites, so those sites decide how many it finds.
Or skip the search: a checked list in one call
We run a free proxy list, and we sell residential proxies, so read this part with that in mind. Our list API returns every working free proxy we hold in one call, already checked, as txt, JSON or CSV, with no key:
curl "https://hproxy.com/api/proxy-list?format=txt&protocol=socks5"
It filters by protocol, country, anonymity and latency, much like ProxyBroker, and also by network, port and uptime. On October 23, 2026, one call counted 7,323 working proxies. To check a single proxy, https://hproxy.com/api/proxy-check?proxy=ip:port does it in one request. Our free proxy list shows the same proxies in the browser.
For a list you already have, our online proxy checker takes up to 100,000 lines a run and 300,000 a day without an account. Our free app, on our proxy checker page, checks from your own connection on Windows 10 and 11, macOS and Linux.
Public proxies are shared and short-lived, so they suit tests better than work that must stay up.
Where HProxy fits
The list and the checkers are free. What we sell is residential proxies: Residential Lite costs $0.50/GB for one GB, falling to $0.44/GB at 2,000 GB+, and the balance does not expire. When free proxies keep failing on your target, a paid pool is the next step, and you can test it with the same tools.
What we could not find out
We did not install or run ProxyBroker or ProxyBroker2, so the Python error rests on its code and on users' reports. We read no source or judge whose robots.txt says no. Our check is one request per address, from one server, at one moment, and "lists proxies" counts addresses on a page without testing them. For some sources, ProxyBroker reads further pages or forms that a first-page check cannot see. PyPI counts every download, mirrors and automated builds included, so the 4,843 includes those.
Sources
- ProxyBroker's repository on GitHub (constverum/ProxyBroker): its README, setup.py, providers.py, judge.py, api.py and server.py, and issues #194, #195, #200, #201 and #203, read October 23, 2026.
- PyPI's records of proxybroker and proxybroker2, and pypistats.org's download counts, read October 23, 2026.
- Python 3.10's "What's New" (the loop parameter removed, bpo-42392) and the Python Developer's Guide's table of versions, read October 23, 2026.
- ProxyBroker2's repository on GitHub (bluet/proxybroker2): its README, pyproject.toml and releases, read October 23, 2026.
- Our check of ProxyBroker's 35 built-in sources and 8 web judges, one request each from our server, October 23, 2026.
- HProxy's free list API and checkers: their documentation and code, and one call to the API on October 23, 2026.



