Solía descargar videos usando la herramienta de línea de comando youtube-dl, en los últimos dos días cada vez que intento descargar cualquier video recibo un error como se muestra a continuación.
$ 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'
¿que esta pasando?
python
youtube-dl
panico kernel
fuente
fuente
Respuestas:
Tenía exactamente el mismo problema.
Youtube-dl actualizado a través de:
Ejecute youtube-dl a través de sudo
sudo youtube-dl
e informará que han cambiado la distribución y necesitan actualizarse. Presione enter y debería estar listo para comenzar.fuente
Debe exportar su configuración de proxy antes de poder usarla
youtube-dl
para descargar videos de YouTube. Para hacer esto, exporte la configuración del proxy usando:Reemplace nombre de usuario, contraseña, host y port_no con sus respectivas variables. Recuerde reemplazar los caracteres especiales, si los hay, en su nombre de usuario o contraseña con sus códigos HTML. Ignore el nombre de usuario y la contraseña si no tiene uno y expórtelos como:
etc.
Por ej .:
También puede escribir esto en su
~/.bashrc
archivo para evitar escribirlos una y otra vez para futuras sesiones.Vuelva a intentar descargar videos después de hacer esto.
fuente
Cuando intenté actualizar con sudo como se indica en la otra respuesta:
Recibí un mensaje que decía que youtube-dl se había instalado usando un administrador de paquetes y que debería usarlo para actualizarlo. Pero ya lo había hecho
Al final, solo usar sudo para ejecutarlo funcionó.
fuente
Instalar
youtube-dl
consudo apt-get install youtube-dl
desde la línea de comandos, a continuación, utilizar:¡Asegúrese de usarlo
sudo
antes del comando anterior!fuente