Descargar vídeos de YouTube
Aquí va un script que he hecho para descargar vídeos de YouTube y convertirlos a .avi directamente.
Algunas versiones del programa wget tienen un bug que hace que el script no funcione. El parche del programa que corrige el bug puede descargarse aquí.
Para utilizarlo es tan simple como ejecutarlo pasándole como parámetro la URL del vídeo que se quiere descargar. Por ejemplo:
./gettube http://www.youtube.com/watch?v=iCAFl_tqw1w
./gettube 'http://www.youtube.com/watch?v=iCAFl_tqw1w&search=night%20of'
Script:
#!/bin/bash
if [ $# -lt 1 ]; then
echo "Uso: $0 <url del video>"
exit 1
fi
ID=`echo $1 | cut -d= -f2 | cut -d& -f1`
FILE="youtube-${ID}"
BASE_URL="http://youtube.com/get_video.php"
wget -O /tmp/${FILE} $1
if [ $? == 0 ]; then
T_PARAM=`grep '&t=' /tmp/${FILE} | head -n 1 | awk -F'&t=' '{print $2}' | cut -d& -f 1`
VIDEO_URL="${BASE_URL}?video_id=${ID}&t=${T_PARAM}"
wget -O ${FILE}.flv $VIDEO_URL
if [ $? != 0 ]; then
rm -f ${FILE}.flv
exit 1
else
ffmpeg -i ${FILE}.flv ${FILE}.avi
fi
fi
rm -f /tmp/${FILE}
Elaborado por Nacx para ADSLAyuda.com