summaryrefslogtreecommitdiff
path: root/README.md
blob: 645d61dc89ef0bc7bc21bdc45761e91dfd0bcc72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# CHANDL
4chan thread media downloader. This program will download all images, gifs, webms, etc in a specific thread via CLI.

### Quick Start
1. Clone this repository
2. Create and activate virtual environment
3. install requirements.txt
4. `python3 chandl.py <board> <thread_id>`

### Explanation of Arguments
1. `board` - the board the thread is on like `gif` , `pol` , `wsg`
2. `thread_id` - the id of the thread
3. `-o`, `--output-path` - the path you want to download the media to, if empty it will default to downloading to a folder named `data/` in thebase directory of the repo
4. `-q`, `--quiet` - do not display logging in terminal
5. `-d`, `--delete-logs` - delete the log file for the specific thread, this will allow you to re-download all media in the thread 

### Why I needed another 4chan-image-downloader
1. [inb4404](https://github.com/Exceen/4chan-downloader) was the inspiration for this code, but it was clear that it needed to be improved upon.
   1. inb4404 code is not clean or modular, it is a functional piece of code that is difficult to read
   2. inb4404 has a weird methodology for logging which files were downloaded, it essentially downloads the files twice, one in a temp folder that is used to keep track of what it has downloaded and one in your destination folder
   3. inb4404 has a great feature that allows you to keep polling the thread for new images, which I do not have implemented in my code in this version
   4. inb4404 also has a great thread watcher feature which I have not adopted, and probably will not because Exceen has already accomplished that and I do not have a use for it.
2. [4chan-bulk-download](https://github.com/hache0099/4chan-bulk-download)
   1. very clean code
   2. lacks important functionality like a flag for selecting output directory and polling a thread for new images
3. [mariot](https://github.com/mariot/chan-downloader)
   1. This looks like the best current option, but I do not know RUST and I am not interested in learning it.