Descargar vídeos en Linux 64 bits sin programas

truco para descargar videos youtube sin utilizar programasDe un tiempo a esta parte son varias las personas que han indicado, a través de los comentarios y el soporte técnico, que no pueden obtener los vídeos flash de Youtube y servicios online similares.

Algunos argumentan que puede deberse al cambio de versión de Flash pero he podido comprobar que utilizando el mismo servicio en equipos diferentes (mi equipo de sobremesa tiene un linux 32 bits mientras que el portátil es de 64 bits) con la misma distribución Linux (Arch) el comportamiento varía por lo que parece que la responsable es la implementación de Flash para las diferentes arquitecturas.

Veamos cómo solucionar el problema

Procedimiento

Como bien menciona Codix en los foros de Ubuntu, la idea es buscar entre los archivos abiertos por los distintos procesos

lsof | grep Flash

observamos que sólo existen dos ficheros flash diferentes en la lista

cómo descargar vídeos flash de youtube y google video

debemos fijarnos en los siguientes valores de cada uno de ellos

identificar los ficheros abiertos por un proceso en linux

de modo que la rutas a los vídeos flash serán

  • /proc/8020/fd/38
  • /proc/8021/fd/32

que observamos que han sido generadas utilizando

  1. el valor de la primera columna (8020 y 8021)
  2. los valores de la quinta columna sin la letra (38 y 32)

Simplificando el trabajo

Definir función Linux

Aunque no es complicado he optado por crearos una secuencia de comandos Linux para evitaros complicaciones.

for f in `lsof | grep '/tmp/Flash' | awk -F ' ' '{ if ($5!="REG") print "/proc/" $2 "/fd/"$5}' | sort | uniq | sed 's/\([0-9]\+\)[a-z]\+/\1/g'`; do cp $f $(mktemp -u /tmp/VideoFlash-XXXXXXXXXX.flv); done

como no nos acordaremos de tanto comando lo mejor es crear una función con ella

flash() { ... } 

sustituyendo los puntos suspensivos con el comando anterior.

Para que esté disponible siempre que abramos una terminal bastará con incluir dicha función dentro del fichero ~/.bashrc

NOTA: recuerda que ~ es tu directorio de usuario 😉
definir funcion y alias permanente en bashrc de linux

Usar la función

Tan sencillo como escribir en la línea de comandos

flash

NOTA: flash porque he llamado así a la función en .bashrc 😉

Si te vas al directorio /tmp encontrarás una serie de ficheros (tantos como tengas abiertos en el navegador) .flv con los Flash que andas buscando

recuperar ficheros flash en el directorio temporal de linux

Conclusión

Aunque no es tan sencillo como en los sistemas de 32 bits (donde bastaba buscar en /tmp) espero que no os resulte excesivamente complicado recuperar los vídeos Flash que estéis visualizando con el script y/o la explicación del truco ofrecida.

16 comentarios en “Descargar vídeos en Linux 64 bits sin programas

  1. Pingback: BlogESfera.com
  2. Hola, tengo un problema… cuando lsof | grep Flash me da la información del vídeo pero al final pone (deleted) ejemplo:

    xxx@xxx:~$ lsof | grep Flash
    npviewer. 2485 xxx 11u REG 8,6 17552220 524332 /tmp/FlashXXC39biI (deleted)

    si alguien sabe como hacer para que no suceda eso se lo agradeceria

  3. En archlinux estoy usando youtube-dl, es facil de usar y te baja el video con mayor calidad si no le pasas parámetros.
    Tuve problemas con el plugin de flash de 64, asi que instale el de 32 con nspluginwrapper.
    Saludos! 🙂

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s