A command line (CLI) program for monitoring and downloading 8chan threads. Licensed under MIT.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Abrax 92958734ba Now licensed under MIT. 3 years ago
logic Fixes #10 3 years ago
.gitignore Hid secondary files in their own directory. 3 years ago
License.txt Now licensed under MIT. 3 years ago
Readme.md Updated readme. 3 years ago
lizard.py Fixes #10 3 years ago

Readme.md

lizard, the 8ch monitor

lizard is a command line (CLI) program for monitoring 8ch threads. After you add a thread to its watchlist, it can connect to 8ch and check if new replies were made, notifying you if so. It will attempt to save the thread and the files in it in case the thread dies. It can also open all threads with new replies in your browser with a single command.

Installation

Make sure you have Python 3 with all the packages that are imported. For now, looking at the source files and ensuring this is your problem. Download the repo and put the files into a directory you want.

Usage

On a Linux system, you can run lizard by cding to the directory and typing ./lizard.py. lizard must be invoked with a correct set of command line arguments, otherwise it will print a help message explaining the syntax.

On the first run, you must create a new database file to store data about the watched threads: ./lizard.py i

Add a thread to the database with: ./lizard a <URL> Upon adding a thread, lizard will immediately download a copy of the thread and the files in it. These will be put under /data/ inside the directory where you put the lizard scripts.

FAQ

Is lizard only for Linux?

It’s in Python so should work anywhere. However being CLI, it could be inconvenient to work with in Windows, which tends to have poor CLIs. I wrote it for use on Linux and it will probably be most convenient in a Linux command line.

Is there a GUI?

No. An earlier version of this program had a GUI, but it turned out to be more trouble than it’s worth.

Why doesn’t lizard automatically refresh threads at set intervals?

Since Linux systems already have ways of scheduling automatic execution of programs, such as cron, I deliberately left out this feature. You can set a scheduled job that runs ./lizard.py r at a frequency that suits you.

How can I see what’s in the database?

./lizard l will print out a summary, but if you want the nitty gritty I recommend the SQLite browser sqliteman. You can see the tables and alter them as you wish.

Why does it create so many .json and .html files in the data directory?

These are saved at each refresh in case the thread dies or any replies are deleted. Periodically clearing the older files is left up to the user.