StreamDL

Monitor and Download Streams from a Variety of Websites


Project maintained by dangeroustech Hosted on GitHub Pages — Theme by mattgraham

StreamDL

Build Status Maintainability

Monitor and Download Streams from a Variety of Websites

Why This Exists

Because there are certain streaming websites that don’t store historic VODs of their livestreams. This is sad. As a nerd, you probably have terabytes of storage somewhere, right? Why not get some use out of it? Archivists everywhere, rejoice!

Usage

  usage: Monitor and Download Streams from a Variety of Websites

  optional arguments:
  -h,               --help      show this help message and exit
  -l    LOGPATH,    --logpath   LOGPATH
                                Logfile to use (defaults to working dir)
  -ll   LOGLEVEL,   --loglevel  Log level to set (defaults to INFO)
  -o    OUTDIR,     --outdir    OUTDIR
                                Output file location without trailing slash
                                (defaults to working dir)
  -c    CONFIG,     --config    CONFIG
                                Config file to use
  -r    REPEAT,     --repeat    REPEAT
                                Time to repetitively check users, in minutes

Install

Docker

If you’d like to tweak individual parameters, the Dockerfile provided can be used.

Edit the Environment variables in docker-compose.yml.example to modify script functionality.

Otherwise, just rename it to docker-compose.yml and run docker-compose up -d.

Logs are piped to stdout by default so that docker-compose logs works. If you know what you’re doing, you can change this value in entrypoint.sh. Make sure to rebuild the container with docker-compose build after editing this.

Bare Metal

This example assumes python --version returns something above Python 3.8 and you have made a config.yml file based on the config.yml.example provided in the repo.

Config File

Basic YAML format. See config.yaml.example for a couple of test sites.

twitch.tv:
- kaypealol
- day9tv
mixer.com:
- ninja