Skip to main content

Proxidize Proxy Tester - A multi-threaded proxy testing tool for HTTP/SOCKS proxies

Project description

Proxidize: Proxy Tester

A professional, multi-threaded proxy testing tool for HTTP and SOCKS5 proxies with built-in speed testing and geo-location lookup.

Features

  • ๐Ÿš€ Multi-threaded Testing: Efficient parallel proxy testing with intelligent thread management
  • ๐ŸŒ HTTP & SOCKS5 Support: Test both HTTP and SOCKS5 proxies seamlessly
  • ๐Ÿ“ Geo-location Lookup: Get detailed location information for working proxies
  • โšก Speed Testing: Built-in download speed testing using speedtest-cli
  • ๐ŸŽจ Beautiful UI: Rich terminal interface with colored output and formatted tables
  • ๐Ÿ“Š Export Results: Save results to CSV format for analysis
  • ๐Ÿ›ก๏ธ Robust Error Handling: Graceful handling of failures and interruptions
  • ๐Ÿ”ง Flexible Input: Support for single proxy, file input, or interactive proxy entry

Installation

Recommended Installation (macOS)

# Install pipx via Homebrew (recommended method for macOS)
brew install pipx

# Install proxidize_pt
pipx install proxidize_pt

Recommended Installation (All Platforms)

# Install pipx if you don't have it
pip install --user pipx
pipx ensurepath

# Install proxidize_pt
pipx install proxidize_pt

Alternative Installation Methods

Using pip with virtual environment:

# Create a virtual environment
python3 -m venv proxy_tester_env
source proxy_tester_env/bin/activate  # On Windows: proxy_tester_env\Scripts\activate

# Install the package
pip install proxidize_pt

Using pip with user flag:

pip install --user proxidize_pt

System-wide installation (not recommended):

pip install --break-system-packages proxidize_pt

From Source:

git clone https://github.com/fawaz7/Proxy-tester.git
cd Proxy-tester
pip install -e .

Usage

Command Line Interface

Once installed, you can use the main command:

proxidize_pt [options] <proxy_file_or_single_proxy>

Basic Examples

# Test a single HTTP proxy
proxidize_pt --http pg.proxi.es:20000:username:password

# Test a single SOCKS5 proxy with geo-location
proxidize_pt --socks --geo pg.proxi.es:20002:username:password

# Test proxies from a file with speed test and verbose output
proxidize_pt --http --geo --speed-test -v proxies.txt

# Export results to CSV format
proxidize_pt --http --geo proxies.txt -o results.csv

# Export results to TXT format
proxidize_pt --http --geo proxies.txt -o results.txt

# Without specifying extension (defaults to CSV)
proxidize_pt --http --geo proxies.txt -o results

# Interactive mode (no arguments)
proxidize_pt

Command Line Options

positional arguments:
  proxy                 Single proxy or path to proxy list file

options:
  -h, --help            show this help message and exit
  --socks               Use SOCKS5 proxy
  --http                Use HTTP proxy
  --geo                 Enable IP geolocation lookup
  --speed-test          Include download speed test
  -o OUTPUT, --output OUTPUT
                        Output file path - specify format with extension (.txt default, .csv available)
  -v, --verbose         Enable verbose debug output

Output Formats

Results can be saved in two formats by specifying the file extension:

  • TXT format: Use .txt extension (e.g., results.txt) - Tab-separated values, human-readable plain text format (default)
  • CSV format: Use .csv extension (e.g., results.csv) - Comma-separated values, ideal for spreadsheet applications and data analysis

The output format is automatically determined by the file extension you provide. If no extension is specified, TXT format is used by default.

Proxy Format

Proxies should be in the format: host:port:username:password

Examples:

proxy.example.com:8080:user123:pass123
192.168.1.100:3128:admin:secret
pg.proxi.es:20000:username:password
pg.proxi.es:20002:username:password

Input Methods

  1. Single Proxy: Pass a proxy directly as an argument (without quotes)
  2. File Input: Create a text file with one proxy per line
  3. Interactive Mode: Run without arguments to enter proxies manually. After testing, you'll be prompted to save results in TXT format by default (or CSV if you specify .csv extension).

Example File (proxies.txt):

proxy1.example.com:8080:user1:pass1
proxy2.example.com:3128:user2:pass2
pg.proxi.es:20000:username:password
pg.proxi.es:20002:username:password

Platform Support

Proxidize works on all major platforms:

  • โœ… Windows (Windows 10, 11)
  • โœ… Linux (Ubuntu, Debian, CentOS, etc.)
  • โœ… macOS (10.14+)

Requirements

  • Python 3.7 or higher
  • Internet connection for proxy testing
  • All dependencies are automatically installed via pip

Output

Results are displayed in a beautiful table format and can be exported to CSV:

                          Proxy Test Results
โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ # โ”ƒ Proxy Type โ”ƒ IP Address     โ”ƒ Location                          โ”ƒ Latency โ”ƒ Speed     โ”ƒ Status  โ”ƒ
โ”กโ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ 1 โ”‚ HTTP       โ”‚ 172.56.168.96  โ”‚ Brooklyn, New York, United States โ”‚ 966ms   โ”‚ 5.03 Mbps โ”‚ Working โ”‚
โ”‚ 2 โ”‚ SOCKS5     โ”‚ 172.58.255.34  โ”‚ College Park, Maryland, US        โ”‚ 1240ms  โ”‚ 3.2 Mbps  โ”‚ Working โ”‚
โ””โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Troubleshooting Installation

Error: "externally-managed-environment"

This error occurs on newer Python installations (especially with Homebrew on macOS). Use one of these solutions:

  1. Recommended: Use pipx for application installation:

    pip install --user pipx
    pipx install proxidize_pt
    
  2. Use virtual environment:

    python3 -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    pip install proxidize_pt
    
  3. User installation:

    pip install --user proxidize_pt
    

PATH Issues

If you can't run proxidize_pt after installation:

  • With pipx: Run pipx ensurepath and restart your terminal
  • With --user: Add ~/.local/bin (Linux/Mac) or %APPDATA%\Python\Scripts (Windows) to your PATH
  • With virtual environment: Make sure the environment is activated

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support

If you encounter any issues or have questions:

  1. Check the documentation
  2. Search existing issues
  3. Create a new issue

If you can't run proxidize_pt after installation:

  • With pipx: Run pipx ensurepath and restart your terminal
  • With --user: Add ~/.local/bin (Linux/Mac) or %APPDATA%\Python\Scripts (Windows) to your PATH
  • With virtual environment: Make sure the environment is activated

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support

If you encounter any issues or have questions:

  1. Check the documentation
  2. Search existing issues
  3. Create a new issue

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

proxidize_pt-1.0.7.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

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

proxidize_pt-1.0.7-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

Details for the file proxidize_pt-1.0.7.tar.gz.

File metadata

  • Download URL: proxidize_pt-1.0.7.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for proxidize_pt-1.0.7.tar.gz
Algorithm Hash digest
SHA256 99805a4c8fddbf1ed3cdf7e9cfc6548c2886a4eecd2b9c83e01ca1cfa7b22626
MD5 acf761a149d636874b4597d76d659896
BLAKE2b-256 ec022aea831d45ba06556849bd48c90df5456f543dd44265b4d93b983da08944

See more details on using hashes here.

File details

Details for the file proxidize_pt-1.0.7-py3-none-any.whl.

File metadata

  • Download URL: proxidize_pt-1.0.7-py3-none-any.whl
  • Upload date:
  • Size: 18.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for proxidize_pt-1.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d2dfe6fd07a2ecb3e581726e520e1e61a41e26edd19df12c65e2dc8f93560f06
MD5 991eea2950b18d63f8c474727233d997
BLAKE2b-256 143065ebfda4f87df2984cfa9a06890b85ee350ba13db8bb91eb1db327e69546

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