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

Este sitio web utiliza cookies para mejorar su experiencia. Asumiremos que estás de acuerdo, pero puedes optar por no seguir si lo deseas. Aceptar Leer más