Problemas al descargar la lista de reproducción usando youtube-dl

19

Recibí el mensaje de que youtube-dl debe actualizarse cuando intento descargar una lista de reproducción de youtube cuando intento actualizar, tengo este mensaje de error:

elshahen@elshahen-LAB:~$ youtube-dl -cit https://www.youtube.com/playlist?list=PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2
[youtube:playlist] PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2: Downloading page #1
WARNING: [youtube:playlist] PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2: Playlist page is missing OpenGraph title, falling back ...
ERROR: Unable to extract title; please report this issue on https://yt-dl.org/bug . Be sure to call youtube-dl with the --verbose flag and include its complete output. Make sure you are using the latest version; type  youtube-dl -U  to update.
elshahen
fuente
Entonces ... ¿hiciste algo que sugirió?
Nattgew
1
Me encontré con el problema descrito en el título, pero por otra razón. Si alguien se encuentra con esto (pero el mensaje de error es diferente), recuerde poner su URL entre comillas, por ejemplo youtube-dl -x "https://www.youtube.com/watch?v=abcd&list=efgh", porque tanto los cmd.exe de Windows como los shells de Linux interpretan el ampersand &como un carácter especial.
f.ardelian

Respuestas:

31

Tuve este problema ... Pruébalo de esta manera ...

Eliminar la versión anterior de youtube-dl

sudo apt-get remove -y youtube-dl

Descargue la última versión del sitio web oficial

sudo wget https://yt-dl.org/latest/youtube-dl -O /usr/local/bin/youtube-dl

Cambiar el permiso del archivo descargado

sudo chmod a+x /usr/local/bin/youtube-dl

Mira este enlace para más detalles.

Espero que esto te ayude..

Príncipe Saiyajin
fuente
6

Utilice el ppa de webUpd8: ppa: nilarimogard / webupd8

Siempre contiene la versión más actualizada.

sudo apt-get remove youtube-dl
sudo apt-add-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install youtube-dl
keiki
fuente
5

Intenté descargar la lista de reproducción en su pregunta y recibí el mismo mensaje de error que usted. En lugar de actualizar youtube-dl, que funciona correctamente, fui a la página web de su lista de reproducción, copié la URL y ejecuté los siguientes comandos desde el terminal:

sudo apt install jq # command-line JSON processor    
cd Desktop/    
youtube-dl -j --flat-playlist "https://<yourYoutubePlaylist>" | jq -r '.id' | sed 's_^_https://youtu.be/_' > batch-file.txt  

Los resultados de estos comandos fueron una lista de todos los enlaces en esa página web. Hice un archivo por lotes con una lista de las URL de todos los videos (solo los videos, no los otros enlaces), cada URL de video en una nueva línea. Después de eso, podría descargar todos los videos con un solo comando siguiendo estas instrucciones.

  1. Cree un archivo por lotes que es un archivo de texto que contiene una lista de URL de videos de YouTube que desea descargar. Las URL deben organizarse en una lista que tenga solo una URL y nada más en cada línea, con una nueva línea para cada URL en la lista. Guarde el archivo por lotes con un nombre que sea fácil de recordar, como por ejemplo file-file.txt. Si todos los archivos están en el mismo usuario, canal o página web de lista de reproducción en YouTube, puede generar un archivo de texto con una lista que tenga todos los enlaces en esa página ejecutando el siguiente comando:

    youtube-dl -j --flat-playlist "https://<yourYoutubePlaylist>" | jq -r '.id' | sed 's_^_https://youtu.be/_' > batch-file.txt 
    
  2. Desde la terminal ejecutada:

    youtube-dl -ct --simulate --batch-file='/path/to/batch-file.txt'
    
  3. Este es el comando básico, sin embargo, también debe agregar los formatos de los videos que desea descargar o de lo contrario puede encontrarse descargando videos con formatos que no deseaba. Entonces, primero simule su descarga para ver si el formato que desea está disponible:

    youtube-dl -ct -f 34 --simulate 'http://www.youtube.com/some-alphanumeric-string'
    
  4. Si el formato de vídeo no está disponible, un mensaje de error que dice: requested format not available. Si el formato de video está disponible, no recibirá ningún mensaje de error cuando use la --simulateopción. También puede agregar la -Fopción para ver todos los formatos válidos como este:

    youtube-dl -F 'http://www.youtube.com/some-alphanumeric-string'
    
  5. En el comando anterior he utilizado el formato de vídeo FLV 360p común: -f 34. Es posible que prefiera probar el formato de vídeo FLV 480p utilizando -f 35. Después de haber agregado el formato de video que desea al comando, el comando se convierte en algo como esto:

    youtube-dl -f 35 -ciw -o "%(title)s.%(ext)s" --batch-file='/path/to/batch-file.txt'  
    

    No agregué la --simulateopción al último comando, por lo que este comando se ejecutaría de verdad.

karel
fuente
Tuve que agregar | grep index = para obtener solo los archivos de lista lynx --dump " youtube.com/playlist?list=PLGwhw5SI2xoYKHyzQDj1y2I8vURgm8yd2 " | awk '/ http / {print $ 2}' | uniq | índice grep =
talsibony
0

He estado usando el siguiente código

youtube-dl -cit https://www.youtube.com/playlist?list=PL55RiY5tL51pIQNcOLDjnaQJYuj_GjVSz

Incluso después de la actualización recibí un error similar. Entonces, en lugar de '-cit', usé '-citv' y funcionó.

youtube-dl -cit https://www.youtube.com/playlist?list=PL55RiY5tL51pIQNcOLDjnaQJYuj_GjVSz
CodeGench
fuente