Skip to main content

A library to acquire proxies, written in Python.

Project description

🍯 ProxyJar

ProxyJar is a tool for automatically collecting and verifying proxies from across the web. It saves you the hassle of manual searching by scraping fresh HTTP, HTTPS, and SOCKS proxies from multiple public sources and consolidating them into a single, clean list. Designed for simplicity and speed, it includes a built-in checker to filter out dead links, ensuring you only use active, high-quality connections. Whether you are web scraping or performing network tests, you can get a reliable proxy pool up and running with just a few lines of code.


📦 Installation

Install the package directly via pip:

pip install proxyjar

Note: Ensure you have Python 3.7 or higher installed.


🛠 Usage

Basic Collection

Get a list of verified proxies with default settings:

>>> from proxyjar import acquireProxies
>>> acquireProxies(1)
{'xxx.160.215.xxx:xxxx': {'protocol': 'https'}}
>>> acquireProxies(2)
{'xxx.96.240.xxx:xxxx': {'protocol': 'https'}, 'xxx.191.xxx.1xx:1080': {'protocol': 'https'}}

Command line

Export your freshly harvested list for use in other tools (like Curl or Scrapy):

$ proxyjar -h
Usage: proxyjar [-h] [-V] [-v] [-n COUNT] [-t MAXTIMEOUT] [-f FILENAME] [-r TYPE] [--bottleneck] [-p PROTOCOLS] [--ip IPv4] [URLs]

Description:
A Command-line tool to acquire proxies, written in Python.

Positional Arguments:
  URLs           URL(s) of sites, for request attempts. (Optional)

Options:
  -h, --help     Display information, options and usage.
  -V, --version  Display proxyjar version.
  -v, --verbose  Display progess and information.
  -n COUNT       Maximum number of proxies to fetch.
  -t MAXTIMEOUT  Maximum response time in seconds for each proxy.
                 Range: [1, 10]; Default: 3 seconds.
  -f FILENAME    Redirect standard output to file.
                 Filename supports strftime formatting.
  -r TYPE        Type of output formatting.
                 Options: tabular (default), list, dict, less.
                 list & dict follow JSON syntax.
  --bottleneck   Bottleneck process, limiting the number of threads.
                 Use it for slow devices or network.
  -p PROTOCOLS   Types of proxies to fetch.
                 Options: http, https, socks (socks4, socks5)
                 Default: all.
  --ip IPv4      Use it when prompted to.

Report Issues at 
$ py -m proxyjar -n 10

📋 Configuration Options

Parameter / Option Default Type Description
protocol all str / list[str] Proxy protocol: http, https, socks4, socks5.
maximum int Maximum number of proxies to return.
sites str / list[str] Websites to test proxies against.
returnType dict str / type Return format: dict (default) or list.
maxTimeout 3 int Timeout per proxy (range: 1–10 seconds).
verbose bool Display progress and debug information.
bottleneck bool Limit number of concurrent threads.
ipv4 str Host IPv4 address (used for fail-safe).

Return Type

Item Description
return Proxies
rtype dict[str, dict[str, str]] OR list[dict[str, str]]

Notes

Feature Description
Flexible Parameters Accepts up to 4 positional arguments: maximum, sites, protocol, returnType
Order These parameters can be passed in any order

📜 License

This project is licensed under the GNU General Public License v3.0 (GPLv3). This means:

  • You may use, modify, and distribute this software.
  • Any derivative work must also be licensed under GPLv3 and remain open source.

⚠️ Ethical & Legal Disclaimer

ProxyJar is intended for educational and ethical research purposes only.

  • The author is not responsible for any misuse of this tool.
  • Scraping websites may violate their Terms of Service.
  • Public proxies are inherently insecure; never use them for sensitive data (banking, logins, etc.).

🤝 Contributing

Contributions make the open-source community an amazing place to learn and create!

Author: @iamokish
Project Link: https://github.com/iamokish/proxyjar

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

proxyjar-0.1.0.tar.gz (96.0 kB view details)

Uploaded Source

Built Distribution

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

proxyjar-0.1.0-py3-none-any.whl (99.3 kB view details)

Uploaded Python 3

File details

Details for the file proxyjar-0.1.0.tar.gz.

File metadata

  • Download URL: proxyjar-0.1.0.tar.gz
  • Upload date:
  • Size: 96.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for proxyjar-0.1.0.tar.gz
Algorithm Hash digest
SHA256 af958abb8bba8d25a7f0ca0fbbb141ca454eebf920d13c48779e791800c56298
MD5 96e5e7641d26468334f6ba3d982bd074
BLAKE2b-256 cf025c577e17977485c27ac3de6dba3bd14d869ffd4513682222884f14a87382

See more details on using hashes here.

File details

Details for the file proxyjar-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: proxyjar-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 99.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for proxyjar-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c0915894879fe4eb3a76c0cb07d48fe60ef818028931174f5f53964123cfd01a
MD5 7e9a5cab446bf508544e584256a40b10
BLAKE2b-256 b7e462783c98c1db4d490a8a76ea20ec9b12b45c17790a3bcd391cebd4714a50

See more details on using hashes here.

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