Skip to content

Instantly share code, notes, and snippets.

@bjrne
Created April 29, 2020 11:31
Show Gist options
  • Save bjrne/f93d62b044ddf000fca5a2565ca535e3 to your computer and use it in GitHub Desktop.
Save bjrne/f93d62b044ddf000fca5a2565ca535e3 to your computer and use it in GitHub Desktop.
Javascript Bookmarklet for downloading lecture videos without hassle from the uni halle opencast server

Opencast Videos herunterladen

Diese Anleitung funktioniert für alle opencast-Installationen, die so konfiguriert sind, wie die Instanz der MLU Halle. Falls deine Universität einen anderen Player einsetzt, schau doch mal hier vorbei.

Setup

  1. Erstelle ein neues Lesezeichen von einer beliebigen Website. Welche genau ist egal, der Link wird später sowieso getauscht. Wichtig ist nur, dass du später komfortabel an das Lesezeichen rankommst, also leg es zum Beispiel in die Lesezeichenleiste. Shortcut: Strg + D. Als Namen kannst du z.B. "VL runterladen" ö.ä wählen.
  2. Bearbeite das Lesezeichen. Wie genau, hängt von deinem Browser ab. In Firefox machst du einen Rechtsklick auf das Lesezeichen, dann Eigenschaften oder Properties. In Chrome wählst du Bearbeiten oder Edit. Füge nun den Code statt der Adresse ein, je nach Browser unter Adresse, URL oder Location. Der Code ist die folgende Zeile:

javascript:(function() { var a = document.createElement('a'); a.href = document.getElementById('videojs_videodisplay_presenter_html5_api').src; a.download = a.href.substring(a.href.lastIndexOf('/') + 1); document.body.appendChild(a); a.click(); a.parentNode.removeChild(a); })();

  1. Klicke auf Okay, Speichern oder Save.

Benutzung

Logge dich bei StudIP ein und navigiere von dort zu einer Aufzeichnung, wie sonst auch. Auf der Seite des Videos klickst du nun das eben erstellte Lesezeichen an. Dein Browser sollte dich nun fragen, ob du ein Video runterladen möchtest.

Source-Code

Javascript Code zum Nachlesen:

javascript:(function() {
    var a = document.createElement('a');
    a.href = document.getElementById('videojs_videodisplay_presenter_html5_api').src;
    a.download = a.href.substring(a.href.lastIndexOf('/') + 1);
    document.body.appendChild(a);
    a.click();
    a.parentNode.removeChild(a);
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment