youtube-dl es una pequeña herramienta de línea de comandos escrita en Python y permite descargar videos de varios sitios de video en línea, como: YouTube.com, Dailymotion, Google Video, Photobucket, Facebook, Yahoo, Metacafe, Depositfiles y algunos otros sitios similares. Está escrito en pygtk y requiere que el intérprete de Python esté instalado en el sistema para poder ejecutar este programa. El programa funciona en cualquier sistema Linux, Windows o Mac OS X que cuente con los requisitos antes mencionados.
Recientemente, el desarrollador añadió soporte de descarga de vídeo para 17 sitios web nuevos: brightcove.com, auengine.com, RingTV, instagram.com, Jukebox, 3sat, CSPAN, Statigr.am, traileraddict.com, hotnewhiphop.com, wat.tv, tu.tv, gamespot.com, tudou.com, Wimp.com, archive.org y break.com
Este script cuenta con una amplia variedad de opciones que permite desde elegir el formato y calidad de video específica para descargar o controlar la velocidad de descarga hasta convertir formatos de video y audio. También cuenta con soportes para cuentas de usuario, opciones para añadir o descargar subtitulos, soporte para proxy y mucho más. En este artículo vamos a explicar su instalación y usos básicos, con ejemplos simples.
¿Cómo instalar youtube-dl en Linux?
Lo primero es instalar el programa. Puedes hacerlo desde el repositorio de software de Ubuntu. Pero, si quieres tener la última versión disponible debes instalarlo desde el repositorio PPA del autor.
Empleando el repositorio de Ubuntu (versión estable)
sudo apt-get update sudo apt-get install youtube-dl
Empleando PPA (última versión del autor)
sudo add-apt-repository ppa:nilarimogard/webupd8 sudo apt-get update sudo apt-get install youtube-dl
Obtener ayuda para utilizar youtube-dl
Para conocer todas las opciones y comandos disponibles del programa debes escribir lo siguiente:
youtube-dl --help

¿Cómo descargar un video de Youtube rápidamente?
Primero te ubicas en la raíz del directorio donde vas almacenar el video o creas uno nuevo. Utiliza mkdir para crear uno nuevo o cd para entrar a donde deseas almacenar los videos descargados. Digamos que deseo descargar el video clip de “Michael Jackson – They Don’t Care About Us”:
cd ~/Vídeos/Musicales youtube-dl https://www.youtube.com/watch?v=QNJL6nfu__Q

Te recomiendo visitar este artículo para aprender a Realizar búsquedas avanzadas en Youtube, y así encontrar la mejor versión de los vídeos que quieres descargar
¿Cómo controlar la calidad del vídeo a descargar?
Primero listamos los formatos y calidades de vídeos disponibles para saber cual elegir.
youtube-dl --list-formats https://www.youtube.com/watch?v=QNJL6nfu__Q

Ahora que sabemos los formatos disponibles porcedemos a descargar el que deseamos, en este caso elegiré el formato 18 que es un video mp4 con resolución de 640×360. Sólo queda ejecutar el comando y esperar la descarga.
youtube-dl --format 18 https://www.youtube.com/watch?v=QNJL6nfu__Q
Descargar un playlist o lista de reproducción de forma automática
youtube-dl --yes-playlist https://www.youtube.com/playlist?list=PL6gx4Cwl9DGAcbMi1sH6oAMk4JHw91mC_
Descargar una lista de reproducción controlando la máxima calidad de videos, la velocidad de descarga y el formato en mp4
youtube-dl --yes-playlist https://www.youtube.com/playlist?list=PL6gx4Cwl9DGAcbMi1sH6oAMk4JHw91mC_ --max-quality mp4 --rate-limit 100K
Descargar un listado de videos almacenados en un fichero .txt
Para esto necesitamos primero listar todos los videos a descargar en un fichero de texto, ejemplo: lista.txt. Colocamos el fichero txt dentro de la carpeta donde queremos almacenar los videos y empleamos la siguiente orden en la línea de comandos de la terminal para comenzar la descarga.

youtube-dl -a lista.txt --rate-limit 50K --max-quality mp4
Convertir un video de Youtube a un fichero de audio MP3
youtube-dl puede utilizarse para convertir esos videos musicales que tanto te gustan en ficheros mp3 que puedes tener disponibles en tu PC o teléfono. Para ello utilizamos la opcion -x para extraer audio, –audio-format para especificar el formato que pueden ser: “aac”, “flac”, “mp3”, “m4a”, “opus”, “vorbis”, o “wav”. Agregamos –audio-quality 0 para extraer en la mayor calidad posible, siendo 0 la mejor y 9 la peor.
youtube-dl -x --audio-format mp3 --audio-quality 0 URL_VIDEO
Otros trucos
Si necesitas detener la descarga, con la ventana de la terminal activa presiona CTRL + C para interrumpir el programa. Si repites el mismo comando que utilizaste para iniciar la descarga el proceso continuará desde donde fue interrumpido. Si estabas descargando una lista de 20 videos e interrumpiste la descarga durante el video número 6, una vez vuelvas a iniciarla continuará a partir de ese video.