openproxyherder/README.md

40 lines
1.1 KiB
Markdown
Raw Permalink Normal View History

2021-06-06 23:50:15 +00:00
# openproxyherder
A Python webapp that "herds" a list of open proxies, with an API for external programs to add and update entries.
2021-06-23 18:44:52 +00:00
`scripts/` contains some example scripts that might be useful.
2021-06-06 23:50:15 +00:00
2021-06-26 13:08:38 +00:00
There's a [todo list](https://todo.sr.ht/~emerson/openproxyherder) for issue and feature tracking.
2021-06-23 18:44:52 +00:00
## Setup openproxyherder
2021-06-06 23:50:15 +00:00
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 (
2021-06-07 00:35:24 +00:00
id serial primary key,
2021-06-06 23:50:15 +00:00
ip inet,
port int,
exit_ip inet,
2021-06-07 00:35:24 +00:00
exit_ipv6 inet,
proxy_type text,
2021-06-23 18:04:21 +00:00
status text default 'unscanned',
2021-07-08 14:24:01 +00:00
last_seen timestamptz default 'epoch',
last_checked timestamptz default 'epoch',
submitted_at timestamptz,
2021-06-06 23:50:15 +00:00
comment text,
2021-06-07 00:35:24 +00:00
num_failures int default 0,
recheck bool default false
2021-06-06 23:50:15 +00:00
);
```
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).
2021-06-23 18:44:52 +00:00
Run `python openproxyherder.py`
## Scripts
See README in `scripts/` for information about the scripts