Udemy und andere Videos herunterladen mit youtube-dl

28 Apr 2019 - Lesezeit: 2 Minuten

Immer wieder komme ich an den Punkt, das ich mir Videos für den Offlineverzehr herunterladen möchte. Seit es für den Urlaub, bei dem ich bewusst auf das Internet verzichten möchte. Oder aber einfach nur, weil ich auf einer längeren Autofahrt nicht auf die Netzabdeckung verlassen möchte.

Es hat sich herausgestellt, dass das Tool youtube-dl der beste Freund ist, den man sich für diese Aufgabe wünschen kann.

Im Falle von udemy muss man sich allerdings ein wenig durch das Internet suchen, wenn man sich alle notwendigen Informationen heraussuchen möchte die man braucht, damit die gekauften Kurse endlich auf der Platte landen.

Dazu habe ich mir ein Skript gebaut, damit mir ein wenig die Arbeit abnimmt. Zuvor allerdings erstelle ich mir eine Datei courses.txt in welcher ich die URLs zum content Pfad meiner Kurse pflege:

...
https://www.udemy.com/**KURSNAME**/learn/v4/**content**
...

Nachdem ich das getan habe, kann es daran gehen mein Skript aufzuabuen und mit den notwendigen Werten vorzukofigurieren:

download_couses.sh

#!/bin/bash

COURSEFILE=***/PATH/TO/***courses.txt
USERAGENT="Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A403 Safari/8536.25"
FORMAT=best
USERNAME=***MY@USERNAME***
PASSWORD=***MY-SECRET-PASSWORD***
SAVESTYLE="./%(playlist)s/%(chapter_number)s-%(chapter)s/%(playlist_index)s-%(title)s.%(ext)s""
SAVEDIR=***/PATH/TO/VIDEOS***

cd $SAVEDIR

for i in $(cat $COURSEFILE); 
    do 
        DOWNLOADSTRING="./youtube-dl --continue --sleep-interval 10 --user-agent '$USERAGENT' -u $USERNAME -p $PASSWORD -f $FORMAT -o $SAVESTYLE $i"
        ./youtube-dl --continue --sleep-interval 10 --user-agent '$USERAGENT' -u $USERNAME -p $PASSWORD -f $FORMAT -o $SAVESTYLE $i 

            if [ $? -ne 0 ]
                then
                echo "error with $DOWNLOADSTRING" 
                  exit 1
            fi
    done

Für die Erledigung dieser Aufgabe reicht mir das so und ist handy genug. In meinem Fall werden die Kurse dann in meinem Homeorder unter Videos gespeichert im Format Kursname -> Kapitel -> 001 - Titel

Es wurden noch keine Kommentare verfasst, sei der erste!