A reddit download script.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Julius 44b953bc3a Added zip content filter
- images that exist in the zip-file won't be downloaded
6 years ago
.gitignore First working commit 6 years ago
LICENSE.md Initial commit 6 years ago
README.md Added nsfw filter 6 years ago
default-config.yaml First working commit 6 years ago
requirements.txt Added zip content filter 6 years ago
riddle.py Added zip content filter 6 years ago
test.zip Added zip content filter 6 years ago

README.md

riddle.py CodeFactor License: GPL v3

This is a script for downloading images (or other media) from reddit subreddits.

Install

This script requires at least Python 3.6. After cloning this repository you need to install the requirements via

pip install -r requirements.txt

Configuration

Before running you need to provide information for the reddit api. To do so you must create an app in your reddit account preferences. The application must be of type 'script'. That must be done via a config.yaml file in the scripts directory. You can copy the default-config.yaml file to the config.yaml file and change the keys client_id and client_secret under credentials.

# user app credentials
credentials:
  client_id: your app-client id           # change this
  client_secret: your app-client secret   # and change this

# required extension of the file to be downloaded
image-extensions:
  - png
  - jpg
  - jpeg

Running

Help output

Usage: riddle.py [options] [subreddits]

Options:
  -h, --help            show this help message and exit
  -c COUNT, --count=COUNT
                        The number of images to download for each subreddit.
                        If not set it is the maximum fetchable number.
  -o OUTPUT, --output=OUTPUT
                        The name of the output folder. If none is specified,
                        it's the subreddits name.
  -z, --zip             Stores the images in a zip file if true
  -n, --nsfw            If set nsfw-content is also downloaded.

Example

Download all images from r/EarthPorn:

python3 riddle.py EarthPorn

Download all images from r/astrophotography to a zip-file:

python3 riddle.py -z astrophotography

Download a maximum of 200 images from r/astrophotography and r/EarthPorn to one zip-file named coolpics.zip:

python3 riddle.py -z -c 100 -o coolpics astrophotography EarthPorn