proXXy is a powerful tool designed for acquiring and managing a vast quantity of proxies. It is used to gather, organize, and procure HTTP/S, SOCKS4, and SOCKS5 proxies. They can be used for web scraping, penetration testing, bypassing censorship, and many other tasks!
The software is currently capable of retrieving over 500,000 proxies from many different sources.
This project is for educational purposes only— Please do not use this for illegal activities.
- Clone the repository:
git clone https://github.com/0xSolanaceae/proXXy.git
cd proXXy- Install dependencies (pip or poetry):
pip install -r requirements.txt
# or
poetry install- (Optional) activate the poetry shell:
poetry shell- Run the scraper (validation is opt-in via
-V):
python proXXy.py --concurrency 200 --timeout 8The program will modify four files in the output/ directory with your proxies:
HTTP.txtHTTPS.txtSOCKS4.txtSOCKS5.txt
with a logfile (error.log) with warnings/errors.
Validation now has tunable knobs and early exit:
python proXXy.py -V \
--val-concurrency 800 \
--val-timeout 2 \
--val-limit 50000--val-concurrency: how many proxies to test in parallel (higher is faster until your network or the judge sites throttle).--val-timeout: per-proxy timeout seconds.--val-limit: stop once this many valid proxies are found (0 = validate everything).
Syntax for running proXXy is as follows:
usage: proXXy.py [-h] [--validate] [--update] [--version] [--src_check]
[--concurrency CONCURRENCY] [--timeout TIMEOUT]
[--val-concurrency VAL_CONCURRENCY] [--val-timeout VAL_TIMEOUT]
[--val-limit VAL_LIMIT]-V, --validate: Validate HTTP/HTTPS outputs after scraping.-u, --update: Run the update script and exit.-h, --help: Show help.-v, --version: Print the script version and exit.-s, --src_check: Check sources and show counts only.--concurrency / --timeout: Tuning for source fetching.--val-concurrency / --val-timeout / --val-limit: Tuning for validation speed and early exit.
usage: proXXy.py [-h] [--validate] [--update] [--version] [--src_check]
[--concurrency CONCURRENCY] [--timeout TIMEOUT]
[--val-concurrency VAL_CONCURRENCY] [--val-timeout VAL_TIMEOUT]
[--val-limit VAL_LIMIT]
Fast async proxy scraper; scraping & checking HTTP, HTTPS, SOCKS4, & SOCKS5 proxies.
options:
-h, --help show this help message and exit
--validate, -V Validate proxies after scraping (default: False)
--update, -u Run the update script and then exit
--version, -v Print the version of the script and exit
--src_check, -s Verify sources only and exit
--concurrency, -c Concurrent source fetches (default: 120)
--timeout, -t Per-source timeout seconds (default: 8)
--val-concurrency Validation concurrency (default: 400)
--val-timeout Validation timeout seconds (default: 3)
--val-limit Stop validation after N valid proxies (0 = no limit)- Source scraping and validation both use
asyncio+aiohttpwith configurable concurrency/timeouts. - Validation can stop early via
--val-limitto avoid hours-long runs when you only need N good proxies. - Proxy list writes are deduped in-memory before flushing to disk.
- Implement SOCKS4 & SOCKS5 validation.
- Discerning between Elite, Anonymous, and Transparent anonymity classes of proxies.
Need help and can't get it to run correctly? Open an issue or use my contact page.
If you like what I do, buy me boba so I can continue developing this tool and others! Ko-Fi
This project is licensed under the GNU General Public License v3.0 License. See the LICENSE file for more information.