Go to file
FliegendeWurst 9da1a9d2d7 Update dependencies and license
Since rpassword and rprompt are licensed under the Apache 2.0
the combined product has to be GPLv3+, not GPLv2.
2021-05-28 13:21:49 +02:00
.github/workflows Update changelog, CI config and dependencies 2021-05-17 18:22:34 +02:00
src Update dependencies and license 2021-05-28 13:21:49 +02:00
.gitignore Initial commit 2020-04-21 22:41:28 +02:00
build.sh Version 0.2.18 2021-05-07 09:18:29 +02:00
Cargo.lock Update dependencies and license 2021-05-28 13:21:49 +02:00
Cargo.toml Update dependencies and license 2021-05-28 13:21:49 +02:00
CHANGELOG.md Version 0.2.21 2021-05-18 08:53:35 +02:00
LICENSE Update dependencies and license 2021-05-28 13:21:49 +02:00
README.md Update README.md 2021-05-19 11:08:01 +02:00
shell.nix Basic shell.nix 2021-05-13 13:29:18 +02:00

KIT-ILIAS-downloader

Download content from ILIAS. That includes:

  • files
  • exercise sheets and solutions
  • Opencast lectures
  • forum posts

Installation

Windows/Linux users: go to the releases and download the executable for your operating system.
macOS users: Install Rust and compile from source:

$ cargo install --all-features --git 'https://github.com/FliegendeWurst/KIT-ILIAS-downloader'

Usage

First, open a terminal. Navigate to the directory that contains the downloaded binary.

Then execute the program (use -o <directory> to specify the download directory):

$ KIT-ILIAS-downloader -o ./ILIAS

By default, only content on your personal desktop will be downloaded.
Use the --sync-url option to download a specific page and its sub-pages: (the URL should be copied from an ILIAS link, not the browser URL bar)

$ KIT-ILIAS-downloader -o ./ILIAS/WS2021-HM1 --sync-url 'https://ilias.studium.kit.edu/ilias.php?ref_id=1276968&cmdClass=ilrepositorygui&cmdNode=uk&baseClass=ilRepositoryGUI'

Options

$ KIT-ILIAS-downloader --help
KIT-ILIAS-downloader 0.2.21

USAGE:
    KIT-ILIAS-downloader [FLAGS] [OPTIONS] --output <output>

FLAGS:
        --check-videos    Re-check OpenCast lectures (slow)
        --content-tree    Use content tree (experimental)
    -f                    Re-download already present files
    -t, --forum           Download forum content
    -h, --help            Prints help information
        --keyring         Use the system keyring
    -n, --no-videos       Do not download Opencast videos
    -s, --skip-files      Do not download files
    -V, --version         Prints version information
    -v                    Verbose logging

OPTIONS:
    -j, --jobs <jobs>            Parallel download jobs [default: 1]
    -o, --output <output>        Output directory
    -P, --password <password>    KIT account password
    -p, --proxy <proxy>          Proxy, e.g. socks5h://127.0.0.1:1080
        --rate <rate>            Requests per minute [default: 8]
        --sync-url <sync-url>    ILIAS page to download
    -U, --username <username>    KIT account username

.iliasignore

.gitignore syntax can be used in a .iliasignore file: (located in the output folder)

# example 1: only download a single course
/*/
!/InsertCourseHere/
# example 2: only download files related to one tutorial
/Course/Tutorien/*/
!/Course/Tutorien/Tut* 3/

Credentials

You can use the --user and --keyring options to get/store the password using the system password store.
If you use Linux, you'll have to compile from source to be able to use this option.

$ KIT-ILIAS-downloader -U uabcd --keyring [...]

You can also save your username and password in a .iliaslogin file: (located in the output folder)

username
password

Similar programs