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
Wer wie ich ein Rundeck betreibt, damit er die fürchterlich anstrengenden, wiederkehrenden, komplizierten und zugleich anmutenden alltäglichen Aufgaben unter einem Dach zusammenfassen und ggf sogar den Kollegen zugänglich machen kann betreibt, der möchte das natürlich auch schön haben.
Schön bedeutet in diesem Falle hinter einem reversproxy mit SSL und Cache und natürlich einem Contextpath, damit man seine Werkzeugsammlung auch auf einem Server schick aufbereitet über eine entsprechende URL ansteuern kann.
Dazu ist eine Anpassung in der Datei /etc/rundeck/rundeck-config.properties notwendig
grails.serverURL=http://MEINSERVER.MEINEDOMAIN.TLD/rundeck
server.address = 127.0.0.1
server.port = 4440
server.contextPath=/rundeck
/etc/rundeck/framework.properties
framework.server.name = MEINSERVER.MEINEDOMAIN.TLD
framework.server.hostname = MEINSERVER.MEINEDOMAIN.TLD
framework.server.port = 4440
framework.server.url = http://MEINSERVER.MEINEDOMAIN.TLD/rundeck
framework.rundeck.url = /rundeck
Wie man seinen Reversproxy dann für den Pfad /rundeck konfiguriert erkläre ich jetzt einfach mal nicht. Jedenfalls startet Rundeck (vielleicht muss man noch das Java-Zeug einmal mit einem Neustart oder so beglücken wegen Cache und so) nun mit der URL /rundeck.
Quellen und Hinweise
Es ist einfach nicht weg zu bekommen. Dieses olle Windows mit all seinen Unannehmlichkeiten. Eine davon ist, dass es immer wieder etwas zu tun gibt, wenn man von einem USB-Stick installieren möchte oder muss. Natürlich gibt es diverse Tools die einem das abnehmen - aber cool ist was anderes.
Heute stand ich vor der Aufgabe unter Fedora einen solchen USB-Stick zu erstlelen um damit dann einen halbwegs defekten Windows Laptop wieder fertig zu bekommen. Weder einen Windows Rechner oder CD/DVD Laufwerk hatte ich zur hand, also hab ich nach Möglichkeiten gesucht diese Aufgabe zu bewäligen. Bisher hatte ich gute Erfahrungen mit WinUSB gemacht - was nur lange nicht mehr aktualisiert wurde.
Jetzt gibt es da aber einen netten Fork, der das alles wohl wieder richten soll und ich habe mir die Freiheit genommen diesen mail unter meinem Fedora zu installieren. Wie das geht sieht man hier:
Anschließend ist es mit folgendem Aufruf recht einfach möglich einen dusseligen Windows 10 USB Stick herzustellen.