youtube-dl no me funciona. Esta es la alternativa

youtube-dl es una utilidad para la línea de comandos escrita en Python que sirve para descargar vídeos, extraer audios, de plataformas de vídeo como Youtube y otras

Desde hace tiempo solía utilizar youtube-dl para descargar el audio de vídeos que me interesaran desde YouTube. De una manera sencilla podía escuchar el audio en mi equipo sin necesidad de conectarme a dicha plataforma para volver a escuchar lo que quería.

La utilidad era sencilla de utilizar para lo más básico como esto, pero lleno de opciones para poder cubrir otros modos de empleo más sofisticados o en los que se necesitan más configuraciones.

Pero recientemente que volví a necesitarlo, ejecuté como siempre el comando y me devolvía un error que no he sido capaz de resolver.

Ejecutaba el comando para extraer el audio de un vídeo determinado y me devolvía lo siguiente:

$ youtube-dl -x --audio-format mp3 https://www.youtube.com/watch?v=urldelvideo --verbose                                               

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-x', '--audio-format', 'mp3', 'https://www.youtube.com/watch?v=urldelvideo', '--verbose']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.10.9 (CPython) - Linux-6.2.1-1-default-x86_64-with-glibc2.37
[debug] exe versions: ffmpeg 4.4.3, ffprobe 4.4.3
[debug] Proxy map: {}
[youtube] urldelvideo: Downloading webpage
ERROR: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "/usr/bin/youtube-dl/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "/usr/bin/youtube-dl/youtube_dl/extractor/youtube.py", line 1794, in _real_extract
    'uploader_id': self._search_regex(r'/(?:channel|user)/([^/?&#]+)', owner_profile_url, 'uploader id') if owner_profile_url else None,
  File "/usr/bin/youtube-dl/youtube_dl/extractor/common.py", line 1012, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Viendo la versión de mi equipo del paquete de software me indicaba que estaba usando la versión: 2021.12.17

¡Vaya! Parece que desde 2021 no han actualizado sus paquetes de software, aunque en su repositorio en Github sí que parece que hay commits más recientes.

Como no conseguí poner solución al problema que me presentaba ahora youtube-dl, estuve buscado otras opciones y así es como conocí a yt-dlp.

yt-dlp es un proyecto derivado de youtube-dl en el que se han incorporado parches y mejoras al código original. Viendo la versión en su repositorio de GitHub, a fecha de escribir esto, veo que es 2023.03.04, es decir, de hace un par de días.

Instalé la aplicación desde los repositorios de openSUSE Tumbleweed, pero hay otras formas alternativas de instalar la utilidad. Y ahora es el momento de probar si funciona…

Los comandos y opciones son similares a las de youtube-dl, por lo que cambiando el nombre de la utilidad ejecuté el comando anterior y esta vez sí que se ejecutó sin ningún problema y descargué el audio en mi equipo.

No quiere ser este artículo una guía extensiva de cómo usar la utilidad y sus diferentes y extensísimas opciones, si no una información de que si a tí, como a mí, también te falla youtube-dl, pruebes yt-dlp y veas si así se solucionan tus errores.

imagen: Óscar Sánchez Requena

17 comentarios sobre “youtube-dl no me funciona. Esta es la alternativa

  1. Tuve muchos errores similares, los solucioné usando el youtube original (no de repositorios) luego actualizo con el comando «youtube-dl -U». Me funcionó. De todas formas es interesante conocer una alternativa.-

    1. Hola!
      yo al correr el comando de actualización que mencionas, me decía que estaba al día, por eso fue lo de buscar una alternativa…
      Saludos y gracias por pasarte por el blog y comentar!

  2. Buenas Victorhck,

    Espero que haya comenzado bien 2023.

    Es la mejor opción para descargar vídeos. Para descargar el audio puedes
    ejecutar «yt-dlp –extract-audio –audio-format mp3».

    Si desde los repos de openSUSE no la tienen a la última versión, esta
    utilidad cuenta con actualizador propio ejecutando «sudo yt-dlp -U».

    Yo la descargo e instalo de esta forma:
    1. wget https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -O /usr/local/bin/yt-dlp
    2. chmod a+rx /usr/local/bin/yt-dlp
    3. ln -s /usr/local/bin/yt-dlp /usr/bin/yt-dlp

    Y así puedo tenerla siempre a la última indendientemente de los repositorios de la distribucción.

    Saludos

  3. A mi ya me pasó hace 1 semana o 2. Y efectivamente, el -U me decía que al día. Al día de 2021.

    Así que instalé yt-dlp desde el repo de Packman (no hacen falta repositorios extra como el comentado más arriba). De hecho, en las actualizaciones pendientes de Packageit tengo el yt-dlp 2023.03.04-pm154.2.1.

    ytdlp -F urldeyoutube para ver todos los formatos del vídeo
    ytdlp -f xxx urldeyoutube para descargar el formato elegido

    Y si bajas un fichero de sólo vídeo y uno de sólo audio (útil para resoluciones de 1080p que no tienen audio y vídeo juntos) usas ffmpeg para unirlos:

    ffmpeg -i video.mp4 -i audio.m4a videoconsonidoa1080p.mp4

    Saludos

  4. Hola.
    Ya hace bastante tiempo que uso «yt-dlp», casi ni recuerdo pero estoy seguro que fue por problemas similares.
    Nunca más he tenido problemas para descargara audio o videos de YouTube.
    Victor con tu permiso compartiré dos alias que tengo creados, uno para descargar audio y llevarlo a .mp3 y otro videos a .mp4.
    Espero les guste y les sea útil, cualquier sugerencia es bienvenida.

    alias YT2MP3=’yt-dlp -x –embed-thumbnail –audio-quality 0 –audio-format mp3 ‘
    alias YT2MP4=’yt-dlp -f «bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best»‘

    Gracias Victor.

    Have a lot of Fun!!

    1. ¡¡Muchas gracias!!

      He cogido tu 2º alias y he hecho una función para Fish que funciona de maravilla:

      function yt –description ‘descarga un video de Youtube a máxima calidad H264/AAC’ –argument url
      yt-dlp -f «bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best» $url
      end

      Sólo has de escribir:

      yt URLdeYoutube

      y te baja el MP4 con audio AAC.

      Saludos

      1. Excelente aporte, …sería bueno compartir en el Foro, de esa manera más pueden usarlo.

        Gracias Muchachos.

      1. Se lo traga casi todo, incluso de servidores de pelis Streamtape, y a toda leche.

Me gustaría saber tu opinión. Deja un comentario (Puedes usar MarkDown)

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.