Go to file
Em a82231ca70
Reset num_failures to 0 when processing removal requests
2021-11-09 07:27:25 -05:00
scripts Reset num_failures to 0 when processing removal requests 2021-11-09 07:27:25 -05:00
.gitignore add dronebl ticket checker 2021-07-04 18:39:59 -04:00
LICENSE.txt initial push 2021-06-06 19:50:15 -04:00
README.md needs to be tz aware pg columns 2021-07-08 10:24:01 -04:00
config.example.yaml add scripts and fix config 2021-06-23 14:44:52 -04:00
openproxyherder.py Oops 2021-07-08 10:11:00 -04:00
openproxyherder.service add systemd files for everything 2021-11-02 07:44:15 -04:00
requirements.txt initial push 2021-06-06 19:50:15 -04:00

README.md

openproxyherder

A Python webapp that "herds" a list of open proxies, with an API for external programs to add and update entries.

scripts/ contains some example scripts that might be useful.

There's a todo list for issue and feature tracking.

Setup openproxyherder

This is tested with Python 3.8 and 3.9, but should work with Python 3.5 and above.

You'll need a postgresql database available via TCP, with the following table:

create table proxies (
    id serial primary key,
    ip inet,
    port int,
    exit_ip inet,
    exit_ipv6 inet,
    proxy_type text,
    status text default 'unscanned',
    last_seen timestamptz default 'epoch',
    last_checked timestamptz default 'epoch',
    submitted_at timestamptz,
    comment text,
    num_failures int default 0,
    recheck bool default false
);

Copy config.example.yaml to config.yaml, edit config.yaml as needed.

Install the packages in requirements.txt (probably a good idea to create a venv).

Run python openproxyherder.py

Scripts

See README in scripts/ for information about the scripts