Youtube-dl es mi administrador de descargas de línea de comandos favorito y preferido. Lo uso a menudo para descargar audios, videos y películas de Internet. Hoy intenté descargar un video de YouTube usando youdtube-dl desde mi escritorio Linux y recibí este mensaje de error:No se pueden descargar los datos del video:Error HTTP 403:Prohibido . Por lo general, la mayoría de los errores de youtube-dl se solucionarán después de actualizar youtube-dl. Así que actualicé youtube-dl usando el comando:
$ sudo youtube-dl -U
¡Ya está actualizado! Tengo la versión más reciente.
Y luego intenté nuevamente descargar el video con el comando:
$ youtube-dl https://www.youtube.com/watch?v=4jTy5jnMkYc
Pero me sale el mismo error:
[youtube] 4jTy5jnMkYc: Downloading webpage WARNING: Requested formats are incompatible for merge and will be merged into mkv. ERROR: unable to download video data: HTTP Error 403: Forbidden
Si alguna vez se encontró con este error, siga los pasos que se indican a continuación para solucionarlo.
Reparar el error "No se pueden descargar datos de video:HTTP Error 403:Prohibido" al descargar archivos multimedia con Youtube-dl en Linux
Este error probablemente ocurrirá debido al caché de Youtube-dl. Para solucionarlo, simplemente elimine el caché de youtube-dl usando el comando:
$ youtube-dl --rm-cache-dir
Este comando eliminará el directorio de almacenamiento en caché local para youtube-dl. En mi caso, eliminó el siguiente directorio:
Removing cache dir /home/sk/.cache/youtube-dl ...
Si usa Youtube-dl en código Python, lo siguiente le ayudará a solucionar este error.
# 'cachedir': False -> don't use a local caching dir (~/.cache/youtube-dl) ydl_opts = {..., 'cachedir': False } with youtube_dl.YoutubeDL(ydl_opts) as ydl: result = ydl.extract_info(url)
Ahora, puedo descargar los videos de YouTube sin ningún problema.
$ youtube-dl https://www.youtube.com/watch?v=4jTy5jnMkYc
[youtube] 4jTy5jnMkYc: Downloading webpage [youtube] 4jTy5jnMkYc: Downloading js player vflset [youtube] 4jTy5jnMkYc: Downloading js player vflset WARNING: Requested formats are incompatible for merge and will be merged into mkv. [download] Destination: Takkar _ Nira Song Lyric Video _ Siddharth _ Sid Sriram _ Gautham Menon _ Nivas K Prasanna-4jTy5jnMkYc.f137.mp4 [download] 100% of 29.87MiB in 00:24 [download] Destination: Takkar _ Nira Song Lyric Video _ Siddharth _ Sid Sriram _ Gautham Menon _ Nivas K Prasanna-4jTy5jnMkYc.f251.webm [download] 100% of 5.10MiB in 00:04 [ffmpeg] Merging formats into "Takkar _ Nira Song Lyric Video _ Siddharth _ Sid Sriram _ Gautham Menon _ Nivas K Prasanna-4jTy5jnMkYc.mkv" Deleting original file Takkar _ Nira Song Lyric Video _ Siddharth _ Sid Sriram _ Gautham Menon _ Nivas K Prasanna-4jTy5jnMkYc.f137.mp4 (pass -k to keep) Deleting original file Takkar _ Nira Song Lyric Video _ Siddharth _ Sid Sriram _ Gautham Menon _ Nivas K Prasanna-4jTy5jnMkYc.f251.webm (pass -k to keep)
Como probablemente haya notado, hay un mensaje de advertencia en el comando anterior:
[...] WARNING: Requested formats are incompatible for merge and will be merged into mkv. [...]
Esto no es realmente un problema sino un comportamiento esperado para el comando youtube-dl. De forma predeterminada, youtube-dl descargará las transmisiones de audio y video de la más alta calidad disponibles y luego las unirá en un contenedor compatible como mkv, mp4, etc. Si estas transmisiones de audio y video no encajan bien en un contenedor mp4, youtube -dl luego los empaquetará en el contenedor mkv y mostrará el mensaje de advertencia anterior. En tales casos, puede ignorar la advertencia de mkv y descargar el video de mejor calidad y el audio de mejor calidad pero solo en un contenedor mp4 mencionando explícitamente los formatos de audio y video de mejor calidad deseados, como se muestra a continuación:
$ youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]' https://www.youtube.com/watch?v=4jTy5jnMkYc
Para obtener más ejemplos de comandos de Youtube-dl, consulte la siguiente guía.
- Tutorial de Youtube-dl con ejemplos para principiantes
Espero que esto ayude.