Ich habe in den letzten zwei Tagen Videos mithilfe des Befehlszeilentools youtube-dl heruntergeladen, wenn ich versuche, ein Video herunterzuladen, bei dem ein Fehler auftritt (siehe unten).
$ youtube-dl https://www.youtube.com/watch?v=bFew8mgQJ9o
[youtube] Setting language
[youtube] bFew8mgQJ9o: Downloading video webpage
[youtube] bFew8mgQJ9o: Downloading video info webpage
[youtube] bFew8mgQJ9o: Extracting video information
Traceback (most recent call last):
File "/usr/bin/youtube-dl", line 4645, in <module>
main()
File "/usr/bin/youtube-dl", line 4636, in main
_real_main()
File "/usr/bin/youtube-dl", line 4620, in _real_main
retcode = fd.download(all_urls)
File "/usr/bin/youtube-dl", line 869, in download
ie.extract(url)
File "/usr/bin/youtube-dl", line 1135, in extract
return self._real_extract(url)
File "/usr/bin/youtube-dl", line 1406, in _real_extract
url_map = dict((ud['itag'][0], ud['url'][0] + '&signature=' + ud['sig'][0]) for ud in url_data)
File "/usr/bin/youtube-dl", line 1406, in <genexpr>
url_map = dict((ud['itag'][0], ud['url'][0] + '&signature=' + ud['sig'][0]) for ud in url_data)
KeyError: 'sig'
Was ist los?
python
youtube-dl
kernel_panic
quelle
quelle
Antworten:
Hatte genau das gleiche Problem.
Youtube-dl aktualisiert über:
Führen Sie youtube-dl über sudo aus
sudo youtube-dl
und es wird informiert, dass sie die Verteilung geändert haben und aktualisiert werden müssen. Drücken Sie die Eingabetaste und Sie sollten fertig sein.quelle
Sie müssen Ihre Proxy-Einstellungen exportieren, bevor Sie
youtube-dl
Videos von YouTube herunterladen können. Exportieren Sie dazu die Proxy-Einstellungen mit:Ersetzen Sie Benutzername, Passwort, Host und port_no durch Ihre jeweiligen Variablen. Denken Sie daran, Sonderzeichen in Ihrem Benutzernamen oder Passwort durch deren HTML-Codes zu ersetzen. Ignorieren Sie den Benutzernamen und das Passwort, falls Sie keines haben, und exportieren Sie sie wie folgt:
etc.
Zum Beispiel:
Sie können dies auch in Ihre
~/.bashrc
Datei schreiben , um zu vermeiden, dass Sie sie für zukünftige Sitzungen immer wieder schreiben.Versuchen Sie anschließend erneut, Videos herunterzuladen.
quelle
Als ich versuchte, ein Upgrade mit sudo durchzuführen, wie in der anderen Antwort angegeben:
Ich erhielt die Nachricht, dass youtube-dl mit einem Paketmanager installiert wurde und ich sollte dasselbe verwenden, um es zu aktualisieren. Aber ich hatte es schon getan
Am Ende funktionierte es nur mit sudo.
quelle
Installieren Sie
youtube-dl
mitsudo apt-get install youtube-dl
von der Befehlszeile und verwenden Sie dann:Stellen Sie sicher, dass Sie
sudo
vor dem obigen Befehl verwenden!quelle