Mit youtube-dl einen ganzen YouTube-Kanal herunterladen und bei Unterbrechung automatisch fortsetzen

Mit youtube-dl einen ganzen YouTube-Kanal herunterladen und bei Unterbrechung automatisch fortsetzen

Ich lade einen ganzen YouTube-Kanal mit etwa 10.000 Videos herunter. Manchmal stoppt der Download aufgrund von Fehlern wie „Inhalt zu kurz“ oder „Verbindung unterbrochen“. Gibt es jedoch eine Möglichkeit, den Download automatisch neu zu starten? Es gibt wahrscheinlich eine Batchdatei, die Sie erstellen können, aber ich weiß nicht, wie das geht.

Dies ist der Befehl, den ich zum Herunterladen verwende:

youtube-dl -f bestvideo+bestaudio ytuser:(Channel) -o "/Videos/lhs/[%(upload_date)s - %(id)s] %(title)s.%(ext)s" --ffmpeg-location %CD%\ffmpeg\bin

Antwort1

Diese Antwort funktioniert nicht mit älteren Versionen von youtube-dl. Sie müssen youtube-dl auf die neueste Version aktualisieren. Wenn Sie Python auf Ihrem System installiert haben, können Sie die neueste Version von youtube-dl lokal in einer virtuellen Python-Umgebung installieren oder die neueste Version von youtube-dl herunterladen und global installieren.

In Ubuntu 14.04 und höher ist youtube-dl auch ein Snap-Paket. Um es zu installieren, geben Sie ein:

sudo snap installiere youtube-dl# starte es mit Snap Run youtube-dl

Öffnen Sie das Terminal und geben Sie ein:

youtube-dl -f best -ciw -o "%(title)s.%(ext)s" -v <url-of-channel>

…wobei <url-of-channel>durch die URL des Kanals ersetzt wird.

Notiz:Wenn Sie viele Videos herunterladen, sollten Sie vor dem Herunterladen in das Verzeichnis wechseln, in dem Sie die Videos speichern möchten.

Erläuterung

-f, --format FORMAT
    video format code. The special name "best" will pick the best quality.

-c, --continue                   
    force resume of partially downloaded files

-i, --ignore-errors              
    continue on download errors, for example to skip unavailable videos in a channel 

-w, --no-overwrites
    do not overwrite files

-v, --verbose
    print various debugging information

Antwort2

Wenn Sie auf die Manpage von youtube-dl schauen, finden Sie die Option zum Fortsetzen von Teildownloads.

-c, --continue
           Resume partially downloaded files.

Man PageVerknüpfung

Antwort3

Vielleicht gab es dieses Argument noch nicht, als die Frage gestellt wurde, aber

--ignore-errors

bewirkt, dass youtube-dl den Download ungeachtet etwaiger Fehler fortsetzt. Verwenden Sie diese Option mit Vorsicht, da eine solche Sammellösung möglicherweise Probleme verursachen kann, wenn Sie einen wichtigen Fehler übersehen. Bei einem Kanal mit 10.000 Videos stört es Sie jedoch wahrscheinlich nicht, wenn eine Handvoll davon nicht richtig heruntergeladen werden.

Darüber hinaus

--download-archive archive.log

verfolgt, was bereits heruntergeladen wurde und überspringt Videos, die Sie bereits haben, sodass, wenn das Skript beispielsweise aufgrund eines Stromausfalls anhält, beim erneuten Ausführen nicht versucht wird, alles von Anfang an erneut herunterzuladen.

Antwort4

Ein hilfreiches Skript:youtube_channel_archiver

verwandte Informationen