Releases: maximilianfeix/proxy-scraper
Release list
v1.7.1
On PyPI now, and in the official MCP registry.
pipx install proxy-scraper-cliThe plain name proxy-scraper is blocked on PyPI by an older, similar package, so the package is proxy-scraper-cli – the commands stay proxy-scraper and proxy-scraper-mcp, imports stay proxyscraper.
The MCP server is listed as io.github.maximilianfeix/proxy-scraper on registry.modelcontextprotocol.io, and every release updates it by itself. Claude Code:
claude mcp add proxy-scraper -- uvx --python ">=3.10" --from "proxy-scraper-cli[mcp]" proxy-scraper-mcpproxy-scraper --mcp starts the MCP server as well (#42).
v1.7.0
Your AI agent can use the proxies now.
New
-
MCP server –
proxy-scraper-mcpfor Claude Code, Claude Desktop, Cursor, VS Code, Codex and other MCP clients (#129):get_proxies– working proxies instantly, from the hourly list, with the website's filterscheck_proxies– checks from your own network, reports progress while it runsfetch_url– loads a page through a verified proxy as readable text, e.g. "load bbc.co.uk/news as seen from the UK". Switches proxies when one fails, HTTPS only through proxies with verified TLS, and a proxy is only blamed when another one gets the page – a site with an expired certificate doesn't cost you proxies. Local and private addresses are refused, also after redirects and for names that resolve to them.
Claude Code, one line:
claude mcp add proxy-scraper -- uvx --python ">=3.10" --from "proxy-scraper[mcp] @ git+https://github.com/maximilianfeix/proxy-scraper" proxy-scraper-mcp
Other clients: README → For AI agents
-
More sources – 28 new lists, and the GitHub search runs daily now and keeps what it found instead of starting over every 3 days (#127)
Fixed
- Proxy server: stopping it ends open tunnels (on Python 3.12+ Ctrl+C could hang on one), IPv6 targets in plain
http://URLs - Website: calmer trend chart, footer links no longer overlap the wordmark, less empty space (#131)
Next
PyPI (#42) – which also gets the MCP server into the official MCP registry – and the Hacktoberfest issues. See the v1.8 milestone.
Full list: CHANGELOG.md · v1.6.0...v1.7.0
v1.6.0
The list got faster and easier to find, the proxy server can run on its own for days, and everything is English now.
New
- Blocklist check – every exit IP is looked up on SpamCop, with
--no-blocklistedto skip listed ones. In today's list 28 % are listed. If your DNS resolver gets refused it says so instead of guessing (#66) - Live list every hour – instead of every 6 hours, a full run only takes about 3 minutes. "Stable" still means 24 h (#111)
- Pages per protocol and country – socks5/, country/de/ and so on, each with a
proxies.txt, plus a sitemap (#121) - Password for the proxy server –
PROXY_SCRAPER_SERVE_PASSWORDor--serve-password, for HTTP, SOCKS5 and the status page. Plus acompose.yamlthat runs it in Docker (#103) - The server refills itself –
--serve-refill 6checks fresh proxies in the background every 6 hours and adds the hits, so a long-running server doesn't run dry (#109) -o -prints the hits to stdout for pipes, the interface moves to stderr (#105)- Discord bot in
bot/– posts the live list, answers/proxies,/proxy,/stats(#74, #75) - New website and logo, README redesign, WCAG fixes on the site, and the whole repo is in English now (#71, #72, #73, #79, #80)
Fixed
- A target that's down no longer gets working proxies disabled in the proxy server, IPv6 targets work over CONNECT and SOCKS5 (#82)
- Proxies still being confirmed when
--wantis reached no longer count as dead, outdated sources get another look every 3 days (#83) - A handful of smaller robustness bugs (#84)
Next
PyPI (#42), protocol detection on the same connection (#44), and a few Hacktoberfest issues if you want to help. See the v1.7 milestone.
pipx install git+https://github.com/maximilianfeix/proxy-scraper.git
# or
docker run --rm ghcr.io/maximilianfeix/proxy-scraper --want 20Full list: CHANGELOG.md · v1.5.0...v1.6.0
v1.5.0
Big one. The proxy server grew up, the live list got a website, and there's a Python API now.
New
- Live list website – https://maximilianfeix.github.io/proxy-scraper/ with search, filters, copy/download, country and latency charts and a trend over the last runs (#47)
- Stable proxies – the list remembers how many runs in a row each proxy worked. "Stable 24 h+" filter and an "Up for" column on the website (#61)
- Tampering check – a static page has to arrive byte for byte. Out of 270 working proxies, 54 injected something, mostly a
<script>tag. Those are gone now (#46) - Provider and datacenter – ASN and provider name for every exit IP (offline, DB-IP), plus
--no-datacenter. About 45 % of working proxies exit from datacenters (#49) - Proxy server –
--rotate weighted|random|round-robin|fastest,--sticky SEC, choosing per request through the username (country-de-type-socks5-session-abc), SOCKS5 on the same port, dead proxies get re-checked every 5 minutes,--serve-hostfor Docker (#48, #43) - Status and metrics –
/__proxy-scraper/statusas JSON and/__proxy-scraper/metricsfor Prometheus/Grafana (#67) --recheck live– starts from the public list and checks it again from your own network. 517 of 1,169 worked, in 31 s instead of a full scan (#60)- Python API –
from proxyscraper import find_proxies, same checks as the CLI (#50) - Shell completion –
eval "$(proxy-scraper --completion zsh)", also bash and fish (#62)
Next
PyPI (#42), blocklist info for exit IPs (#66, measured: 29 % are on SpamCop) and protocol detection on the same connection (#44), see the v1.6 milestone.
pipx install git+https://github.com/maximilianfeix/proxy-scraper.git
# or
docker run --rm ghcr.io/maximilianfeix/proxy-scraper --want 20Full list: CHANGELOG.md · v1.4.0...v1.5.0
v1.4.0 – exports, logins, Docker and a lot less waiting
Worked through all open issues for this one.
New
- Exports –
--export proxychains,clash,curl(orall) writes ready-to-use configs next to the results. HTTP proxies that can't tunnel are left out of proxychains and Clash, since both only use CONNECT (#4) - Proxies with credentials –
socks5://user:pass@…entries keep their login: Basic auth for HTTP, RFC 1929 for SOCKS5, user ID for SOCKS4. They're never published to the public live list, and the terminal only showsuser:•••(#7) - Fallback check targets – five targets instead of one, none behind Cloudflare. If the current one goes down mid-run, the tool switches and re-checks what was affected, so the source stats don't learn from an outage (#8)
- Docker image –
ghcr.io/maximilianfeix/proxy-scraperfor amd64 and arm64 (#5)
Faster
- ETag cache – unchanged lists aren't downloaded again. A second run right after the first: 0 MB in 9 s instead of 161 MB in 22 s (#9)
- Countries offline – DB-IP Lite instead of waiting for ip-api.com at the end of a run (#2)
Measured and dropped
- Protocol detection with an extra connection made runs slower (77 s vs 60 s), see #3
- IPv6: only ~300 entries in all 726 sources, mostly V2Ray configs, see #1
pipx install git+https://github.com/maximilianfeix/proxy-scraper.git
# or
docker run --rm ghcr.io/maximilianfeix/proxy-scraper --want 20Full list: CHANGELOG.md · v1.3.0...v1.4.0
v1.3.0 – installable, polished, English
Install
pipx install git+https://github.com/maximilianfeix/proxy-scraper.git
proxy-scraperAdded
- Installable command-line tool –
pipx install …gives youproxy-scraper, pluspython -m proxyscraperand--version. Learned state moves to your user data folder, results go to./results(#26) - Release workflow – every version tag is tested, built, smoke-tested and published with a wheel
- Next steps after a run: test the fastest proxy with
curl, start the proxy server, recheck later (#27) - English README (German in
README.de.md), contributing guide, security policy, code of conduct, issue forms (#28)
Changed
- Calmer, consistent terminal UI: one colour palette, framed setup section, clearer panel titles and dashboard cards (#27)
- Live list badges in English
Full changelog: CHANGELOG.md · v1.2.0...v1.3.0
v1.2.0
Neu
- Einrichtungsassistent – ohne Argumente gestartet fragt das Tool per Pfeiltasten, was du suchst: Schnellauswahl (Surfen & Web, Maximal anonym, Sofort als Proxy-Server …) oder Schritt für Schritt. Zeigt am Ende die passende Kommandozeile und merkt sich die letzte Auswahl (#12)
- Rotierender Proxy-Server –
--servestellt die Treffer auf127.0.0.1:8899bereit; jede Verbindung über einen anderen Proxy, unbemerkter Wechsel bei stummen oder falschen Antworten, für HTTPS nur Proxys mit verifiziertem TLS (#15) - Zielseiten –
--target google.combehält nur Proxys, die die Seite wirklich erreichen (#14) - Live-Proxyliste – alle 6 Stunden per GitHub Actions auf dem Branch
proxy-list, mit Badges in der README (#18)
Besser
- Honeypots werden aussortiert – jeder Treffer muss eine zweite, unabhängige Seite mit derselben Exit-IP abrufen. In einem Testlauf waren vorher 699 von 754 „Treffern“ Fakes (#20)
- Schneller mit Filtern –
--max-latencywird zum Timeout, überflüssige HTTPS-Tests entfallen (bei langsamen Proxys 3× schneller) (#13) - aufgeräumte Architektur:
RunOptions, Ablauf in Phasen, UI als Paket (#11) - neue README mit animierter Demo, Lint (ruff), CodeQL, Dependabot
Zahlen
233 Tests (vorher 54), CI auf Linux, macOS und Windows mit Python 3.9 / 3.11 / 3.13.
v1.0.0
Erste veröffentlichte Version.
Was drin ist
- über 700 Quellen: kuratierte Liste, Meta-Quellen und automatische Suche auf GitHub
- eigene Handshakes für HTTP, SOCKS4 und SOCKS5, 2000+ Prüfungen parallel
- HTTPS-Test, Anonymitätsstufe und Land für jeden Treffer
- lernt pro Quelle die Trefferquote und prüft bekannte Proxys zuerst
- Filter (
--country,--https-only,--anonymity,--max-latency) und--want N - Ergebnisse als txt, json und csv unter
results/ - Live-Dashboard im Terminal
Bekannt
- läuft noch nicht unter Windows (#6)
- in Netzen mit strenger Firewall kommt kaum etwas durch – das Tool warnt dann