Git Product home page Git Product logo

proxxy's Introduction

Typing SVG

proXXy is a powerful tool designed for acquiring and managing a vast quantity of proxies. Its primary purpose is to gather, organize, and provide HTTP, HTTPS, SOCKS4, and SOCKS5 proxies. They can be used for web scraping, penetration testing, bypassing censorship, DDoSing, and more!

The software is currently capable of retrieving over 80,000 proxies from many different sources.

This project is for educational purposes only— Please do not use this for illegal activities.


Installation

  • Clone the repository:
git clone https://github.com/Atropa-Solanaceae/proXXy.git
  • Navigate to the project directory:
cd proXXy
  • Install the required dependencies:
pip3 install -r requirements.txt

Simple Usage

  • Run the program:
python3 proXXy.py
  • Select the execution parameters.

  • Allow the program to complete, then check the new text files located in scraped/ directory! (After each instance of the checking process, allow the program time to join threads before moving on to the next proxy protocol.)

The program will output three files in the project directory containing the regularized proxy lists:

  • HTTP.txt
  • HTTPS.txt
  • SOCKS4.txt
  • SOCKS5.txt

along with an error output file titled error.log denoting the sources that were unable to be accessed.

Advanced Usage [BETA testing]

The basic syntax for running proXXy is as follows:

python3 proXXy.py [flags]

T/F = True/False (Boolean)

int = Integer

  1. -v[T/F], --validate: Use this flag to enable proxy validation. The scraper will attempt to validate the scraped proxies by checking their accessibility.

  2. -th [int], --threads: This flag allows you to set the number of threads to use. The default value is 100 threads.

  3. -ti [int], --timeout: This flag allows you to set the default timeout for proXXy. The timeout specifies the number of seconds the scraper will wait for a response before considering a request as failed. The minimum timeout value is 10 seconds.

Example

python3 proXXy.py -vT -th 100 -ti 10
  1. -y: This flag allows you to skip the prompts and run proXXy with the given parameters. (Make sure you know what you're doing!)

Example

python3 proXXy.py -vT -th 100 -ti 10 -y
  1. -u, --update: This flag is used to update the project. When provided alone, it will trigger the update process, ensuring you have the latest version of proXXy.

  2. -h, --help: Use this flag alone to display the help message that explains the available flags and their usage.

Remember to utilize the -h flag whenever you need a quick reference to the available flags and how to use them. The help message will be displayed as follows:

usage: proXXy.py [-h] [-u] [-v {T,F}] [-th THREADS] [-ti TIMEOUT] [-y]

A super simple multithreaded proxy scraper; scraping & checking ~80k HTTP, HTTPS, SOCKS4, & SOCKS5 proxies.

options:
  -h, --help            show this help message and exit
  -u, --update          update project
  -v {T,F}, --validate {T,F}
                        validate proxies (T/F)
  -th THREADS, --threads THREADS
                        number of threads to use, default is 100
  -ti TIMEOUT, --timeout TIMEOUT
                        set the number of seconds for the default timeout (cannot be lower than 5 seconds) 
  -y                    continue without prompts

Notes

  • The combination of flags -v, -th, and -ti is allowed. However, if -v is set to "F" (disabled), the other flags -th and -ti are not allowed.

  • If you choose to enable proxy validation (-v flag), proXXy will display information about the total number of sources and the number of accessed sources after the validation process is completed.

  • When using the -u flag to update the project, proXXy will clear the screen and show a status line indicating the update progress. The update process will take a few seconds to complete.

Planned Features

  • Migrate to asyncio for faster scraping.
  • Implement a feature for automatically testing the scraped proxies to verify their functionality. (2/4th completed)
  • Proxy sorting instead of hardcoding.
  • Provide an option to discern between Elite, Anonymous, and Transparent anonymity classes of proxies.

Support

Need help and can't get it to run correctly? Open an issue or contact me here


proXXy

License

This project is licensed under the MIT License. See the LICENSE file for more information.

proxxy's People

Contributors

atropa-solanaceae avatar quartzwarrior avatar snyk-bot avatar mirusu400 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.