Descargar videos de youtube por consola
October 19th, 2006 by BusindreScript para descargar por consola los videos de youtube. sacado de espalinux.putopunto.com. (Necesita ffmpeg si queremos que convierta de Flash a avi).
Código:
#!/bin/bash
if [ $# -lt 1 ]; then
echo "Uso: $0
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}
Para usarlo nos ponemos como root:
# cd /usr/bin/
# evim downtube (Creamos el script)
# chmod a+x downtube
NOTA: Cada uno le pone el nombre que desea
Ejecutamos:
# downtube http://www.youtube.com/watch?v=04j3FxWP_IQ
Si da un error por no tener el programa ffmpeg (Lo cual permite pasarlo a avi) nos dejará descargado el flv. Como vemos en este ejemplo:
--01:04:30-- http://youtube.com/get_video.php?video_id=04j3FxWP_IQ&t=OEgsT => `youtube-04j3FxWP_IQ.flv'
Resolviendo youtube.com... 208.65.153.242, 208.65.153.245, 208.65.153.241
Connecting to youtube.com|208.65.153.242|:80... conectado.
Petición HTTP enviada, esperando respuesta... 303 See Other
Localización: http://sjl-v40.sjl.youtube.com/get_video?video_id=04j3FxWP_IQ [siguiendo]
--01:04:34-- http://sjl-v40.sjl.youtube.com/get_video?video_id=04j3FxWP_IQ => `youtube-04j3FxWP_IQ.flv'
Resolviendo sjl-v40.sjl.youtube.com... 208.65.153.77
Connecting to sjl-v40.sjl.youtube.com|208.65.153.77|:80... conectado.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: 7,572,448 (7.2M) [video/flv]
100%[==============>] 7,572,448 39.01K/s ETA 00:00
01:09:41 (24.45 KB/s) - `youtube-04j3FxWP_IQ.flv' saved [7572448/7572448]
ffmpeg: symbol lookup error: /usr/lib/libavcodec.so: undefined symbol: faacDecOpen
NOTA: El formato flv con ffplay (ffmpeg), mplayer o vlc podemos visualizarlo sin problemas.
Posted in Curiosidades |

October 19th, 2006 at 11:40 am
Seria interesante una segunda version de dicho script pero que generara ficheros OGG, usando Theora para el video y Vorbis para el audio. De esta forma tendriamos como resultado un fichero con codecs libres. El circulo cerrado perfectamente :)
Para ello en vez de usar ffmpeg, se podria usar una modificacion: ffmpeg2theora, disponible en los repositorios de las distribuciones mas conocidas. Su web aqui: http://www.v2v.cc/~j/ffmpeg2theora/
October 19th, 2006 at 8:46 pm
No me anda el script y lo he hecho tal y como decis, aqui os dejo lo que sale. a ver si alguien sabe lo que puede ser.
October 20th, 2006 at 2:37 am
Es tema de caracteres al pasar el script a tu editor (nano, pico,evim,vim,mousepad,..). Simplemente te cambia las comillas por interrogaciones. Ten cuidado al pasarlo o prueba a copiarlo desde el link original por si esa codificación no te da problemas :)
Ejemplo de como posiblemente lo tengas:
if [ $# -lt 1 ]; then
echo ¿Uso: $0 ¿
exit 1
fi
...
Cuando deberÃa de ser
if [ $# -lt 1 ]; then
echo “Uso: $0 â€
exit 1
fi
...
October 20th, 2006 at 4:23 am
lo tengo con las comillas como tu dices Busindre , pero me falla, solo he hecho copy paste.
Gracias
December 8th, 2006 at 4:57 pm
Gracias por indicar la procedencia del script :D
December 8th, 2006 at 8:54 pm
goldrak El script esta perfectamente, si te falla,.. o lo copias mal,.. o lo copias mal jejeje, pero vamos no puedo ayudarte porque el script está bien. Ya te digo con hacer copy paste no vale, asegurate de que sea idéntico que muchas veces cambian carcteres!!!!
Copia y pega de aqui a ver si te va mejor con el tema caracteres: http://espalinux.putopunto.com/?Seccion=scripts&Accion=4&ID=63&
THraSH , gracias a vosotros :!: