¿Cómo puedo acceder a archivos Flash desde sitios web de transmisión?

30

En Maverick, había una opción para descargar videos Flash de sitios como YouTube, Vimeo, etc., copiando el flashxx**archivo en el /tmpdirectorio a otra ubicación antes de cerrar la ventana. Pero en Firefox 4 en Natty, esto ya no funciona. ¿Por qué?

avi
fuente
Si solo desea descargar videos, le recomiendo Clipgrab: clipgrab.de/en . Tienen un PPA: launchpad.net/~clipgrab-team
Martin Thoma

Respuestas:

26

Una actualización del complemento flash cambió la ubicación del /tmpdirectorio de caché de Firefox (por ejemplo ~/.mozilla/firefox/bq95m4w1.default/Cache). Lamentablemente, el archivo flash en caché no es tan fácil de encontrar como antes, pero es posible.

El siguiente comando enumera todos los archivos flash en su caché de Firefox.

find ~/.mozilla/firefox/*.default/Cache -type f -exec file {} \;  | grep Flash

En versiones más nuevas de ubuntu intente

find ~/.cache/mozilla/firefox/*.default/Cache -type f -exec file {} \;  | grep Flash
Mareado y confuso
fuente
1
¿Por qué no file ~/.mozilla/firefox/*.default/Cache/* | grep Flash? El directorio de caché no parece tener subdirectorios, eso podría justificar el uso de find.
enzotib
no funciona Probablemente trabajó antes.
dumb906
El archivo FLV todavía está en / tmp, sin embargo, necesita un truco especial para acceder a él.
user4124
Vea mi respuesta a continuación que habla sobre la recuperación del archivo FLV usando el sistema de archivos / proc. Aún así, puede usar uno de los complementos de Firefox para realizar la misma tarea.
user4124
28

Puede usar varios complementos de Firefox para extraer los archivos FLV de muchos sitios web como Youtube.

A continuación, le mostraré cómo hacer esto MANUALMENTE con la última versión del complemento Flash.

  1. Visite el video de YouTube y espere a que se descargue por completo.
  2. Luego, ejecute desde la línea de comando el comando

    $ lsof -n | grep Flash

    que muestra los archivos (¡incluso los archivos de memoria !) y los filtra a los que tienen Flashen su nombre.

  3. Obtienes algo como

    plugin-co 2461 user 17u REG 8,5 1693301 524370 /tmp/FlashXXVkHEM6 (deleted).

    Ahora, hay un /tmp/FlashXXVkHEM6pero ha sido eliminado.

  4. En Linux, si se elimina un archivo, en realidad solo desaparece cuando todos los programas que lo abrieron antes están cerrados. Es decir, el complemento Flash está utilizando un truco para ocultar el archivo / tmp / FlashXXVkHEM6. Lo crea y de inmediato deletes. Pero dado que el complemento Flash sigue ejecutándose, aparentemente todavía puede usarlo.

  5. De la línea anterior observamos el número 2461, que es la ID del proceso. En su caso, probablemente será diferente. Entonces corre

    $ cd /proc/2461/fd

    y finalmente ejecutar

    $ ls -l

    Esto le mostrará los archivos de memoria, y específicamente

    lrwx------ 1 user user 64 2011-09-16 10:23 17 -> /tmp/FlashXXVkHEM6 (deleted)

    El número '17' (en mi caso) es el nombre de archivo que puede usar para acceder al eliminado /tmp/FlashXXVkHEM6 . Por lo tanto, simplemente ejecuta

    $ cp 17 /tmp/myyoutubevideo.flv

    y restauras el video de Youtube!

¡Eso es! ¡Recuperaste manualmente el video de Youtube!

usuario4124
fuente
7

Si navega a su carpeta / proc, verá un montón de carpetas con nombres numéricos, incluida una carpeta que coincide con el número en el segundo campo.

Ahora navegue a esta carpeta, luego a su subcarpeta "fd". En esta carpeta, verá una selección completa de números. Estos se relacionan con los descriptores de los archivos mismos.

Ejecútelo ls -len esta carpeta y verá que cada uno de estos números está vinculado a tuberías, tomas o archivos.

Dentro de esto, el número del cuarto campo estará simbólicamente vinculado al archivo / tmp / Flash * que encontramos antes.

Para probar que este es el archivo correcto, puede ejecutarlo a través de mplayer o vlc ( mplayer filedescriptornumber/ vlc filedescriptornumber). Si tiene problemas para encontrar el nombre de archivo, intente ls -l | grep Flash.

Para una manera fácil, intente este comando en la consola:

stat -c %N /proc/*/fd/* 2>&1|awk -F[\`\'] '/Flash/{print$2}'

La salida será algo como esto:

/proc/4691/fd/17
/proc/4691/fd/18

Eso enumerará todas sus transmisiones flash descargadas. Para ese ejemplo, hay 2 videos flash de mi navegador Firefox 4. Si desea copiarlo, simplemente use este comando:

cp /proc/4691/fd/17 ~/Videos/Flash/sample.flv

Fuente: http://n00bsys0p.wordpress.com/2011/02/10/how-to-download-flash-10-2-video-streams-in-linux/

squallbayu
fuente
5

Este pequeño script guardaría sus archivos flash descargados en un directorio personalizado.

  1. haga el directorio donde desea guardar los archivos, por ejemplo ~ / Videos / flvs

    mkdir ~/Videos/flvs
    
  2. abra gedit y copie y pegue este script.

    #!/bin/bash
    # flvcache script
    
    CACHE=~/.mozilla/firefox/*.default/Cache
    OUTPUTDIR=~/Videos/flvs
    MINFILESIZE=2M
    
    for f in `find $CACHE -size +$MINFILESIZE`
    do
        cp "$f" "$OUTPUTDIR/$o"
    done
    
    nautilus  "$OUTPUTDIR"&
    
  3. guarde el archivo como saveflashall.sh, luego agregue permisos ejecutables al archivo

    chmod +x saveflashall.sh
    
  4. entonces ejecútalo.

    ./saveflashall.sh
    

luego abriría los archivos en la primera carpeta creada anteriormente. Personalizado para incluir todos los archivos (funcionados para MPEG y MP4) en lugar de solo flvs.

Los créditos van a http://desdecode.blogspot.com/2011/04/saving-watched-online-videos-linux.html

tonto906
fuente
Intenté esto ... algunos videos que he visto hace mucho tiempo ahora están en esta carpeta, pero los que vi ahora no lo están. ¿Por qué?
avi
4

Hasta donde sé, esto no se debe a Firefox ni a Natty, sino a una actualización flash ...

Puede capturar la secuencia http con wiresharko usar una herramienta como youtube-dlpara obtener el archivo de película.

Pero recuerde que puede no ser legal, así que verifique su legislación local ...

LassePoulsen
fuente
Buen truco con el wirehark, pero supongo que esto puede ser agotador, ya que los videos son bastante grandes (más de 10 MB), mientras que los paquetes vienen con una pequeña porción de esos datos :)
Rafał Cieślak
3

Ubuntu 12.04 (Preciso) - Instrucciones de Firefox 11 Una versión modificada del script bash de chlumma1.

Con un editor de texto, guarde el siguiente código en el archivo llamado "getvids.sh". Muévalo a la ubicación donde desea guardar videos. Haga clic con el botón derecho en el archivo, vaya a Propiedades, cambie los permisos a "Permitir ejecución como programa".

Todo lo que tiene que hacer es hacer clic en el script, seleccionar "Ejecutar en la Terminal" y guardará todos los archivos de video en ese directorio. Para guardar todo el video, debe terminar de cargarse en su navegador. Guardará videos de casi cualquier sitio web, incluidos youtube, vimeo, dailymotion, metacafe, liveleak, facebook . Simplemente elimine cualquier archivo de video que no desee.

(Si un video que desea no se guarda, entonces el sitio web probablemente esté utilizando un formato de transmisión patentado que no puede ser guardado por ningún programa de recuperación de caché. Ejemplos: Hulu, netflix, algunos videos de YouTube). Además, el reproductor VLC es un ideal para ver videos flash.

#!/usr/bin/env bash
# getvids.sh [save_folder]

SAVE_FOLDER="$HOME" # User editable

# If the below option is used, then this script should be run in a terminal.
#CPMOD="-i" # Uncomment to prevent file overwrites

PATERN="libflashplayer"
ALL_PID=`pgrep -f $PATERN`

if [ $? -eq 1 ]; then
  echo ERROR: Flashplayer not running
  exit 1
fi

if [ ! -z $1 ]; then
  echo "Setting save location: $1"
  SAVE_FOLDER="$1"
fi

if [ ! -d "$SAVE_FOLDER" ]; then
  echo "Save location doesn't exist: $SAVE_FOLDER"
  exit 1
fi

for PID in $ALL_PID; do
  declare -a OUTFILES=($(ls -lt1 /proc/$PID/fd | grep '/tmp/Flash' | sed 's/^.*\/tmp\///' | sed 's/\ .*$//'))
  declare -a FDS=($(ls -lt1 /proc/$PID/fd | grep '/tmp/Flash' | awk '{ print $9 }' ))
  for ((i=0; i<${#FDS[@]}; i++)); do
    saveas="$SAVE_FOLDER/${OUTFILES[i]}.flv"
    echo "Copying video ${FDS[i]} to $saveas"
    cp $CPMOD "/proc/$PID/fd/${FDS[i]}" "$saveas"
  done
done

Aquellos que saben un poco sobre el terminal pueden editar las dos primeras variables y lograr un poco de funcionalidad adicional. Alternativamente, para ver los archivos en vivo, puede escribir esto en una terminal para averiguar dónde estánfor i in $(pgrep -f libflash); do find /proc/$i/fd/ -ls | grep "/tmp/Flash" | awk '{ print $11 }'; done

PD. Además, excelente trabajo chlumma1, pero desprende un poco los bucles de estilo de programación C;

Sepero
fuente
2

Las versiones recientes del complemento flash ocultan el archivo temporal al marcarlo como eliminado. Prácticamente la transmisión de video se descarga a un "archivo eliminado". Sin embargo, incluso cuando se elimina un archivo, si el archivo se abre mediante un proceso, puede encontrar su descriptor de archivo y, en consecuencia, el contenido del archivo.

Este simple script imprime los descriptores de archivos de videos Flash abiertos:

file /proc/*/fd/* 2>/dev/null | grep Flash | cut -f1 -d:

Y, probablemente desee crear un archivo normal a partir del descriptor de archivo, por ejemplo:

cp $(file /proc/*/fd/* 2>/dev/null | grep Flash | cut -f1 -d: | head -n 1) video.avi

De lo contrario, el descriptor de archivo no es muy conveniente (recuerde, ¡es un archivo eliminado!)

El método debería funcionar independientemente de su navegador.

Detener el daño continuo a Mónica
fuente
1

Oye, este problema ya existía en 10.10. Entonces, para resolverlo, intente esto:

None of the methods described by previous posters are as convenient as just copying the flash file from the tmp directory.

Therefore, what I did was downgrade my Flash to 10.1.102.64

The download link for older versions of flash is http://kb2.adobe.com/cps/142/tn_14266.html

Download the (large) file named "Flash Player 10.1.102.64 and 9.0.289.0".
After downloading, extract the file named flashplayer10_1r102_64_linux.tar.gz

From this file extract libflashplayer.so and overwrite the file at /usr/lib/flashplugin-installer (you will need root privileges, try gksudo nautilus)

Restart Firefox and your flash videos will land up in the /tmp directory as before! This won't work for Google Chrome, it will continue to use the latest version of Flash.

Note: For the above steps to work, a version of Adobe Flash should have been previously installed.

[citado de este sitio: publicado por chetancrasta View Post ]

Espero que esto ayude. Avísame si esto funcionará.

Vito
fuente
Creo que entendiste mal la pregunta. El póster original ya tiene Flash Player instalado y funcionando. Solo se pregunta dónde Flash almacena sus archivos temporales.
Jeremy Bicha
Ya Correcto. Pero creo que se pregunta dónde se han ido los archivos flash. Con la nueva versión de Adobe Flash Player, se almacenan como @Woozy ya mencionado. @Woozy también mencionó que el "archivo flash en caché no es tan fácil de encontrar como antes". Entonces, si desea que el archivo flash se encuentre "fácil" nuevamente, puede degradar su reproductor flash. En consecuencia, los archivos flash se almacenarán en / tmp nuevamente ... ¡¿Espero que entiendas mi punto ahora ?! ¿O estoy equivocado?
Vito
1

Para un método generalmente aplicable que funcione con Chrome o Firefox, pruebe este pequeño programa llamado flashcache . Copia videos flash que se están reproduciendo actualmente en el directorio actual.

Mi parche agrega la opción -pque hace que el script reproduzca los videos en mplayerlugar de hacer copias de los archivos.

loevborg
fuente
1

Aunque no respondí directamente a la pregunta, me encontré con el mismo problema y después de algunas búsquedas encontré Clipgrab, que es mucho más fácil de usar.

Cas
fuente
1

Puedes probar este comando en una terminal

cp \`file /proc/\*/fd/* | grep tmp/Flash | awk -F":" '{print$1}'` dirname/
Susman
fuente
1

sigue este enlace ( ~/.mozilla/firefox/ewzggcll.default/Cache)

A menos que esté realmente confundido (no lo creo), ese "ewzggcll" no estará en su máquina. Lo que encontrará es una colección aleatoria de letras (¿y posiblemente números?) Que es muy probable que sea exclusiva de su instalación de Linux y Firefox. Sin embargo, esta colección aleatoria de aspecto extraño es importante, porque es esencial para llegar al caché [s].

¡Espero que esto ayude! (HTH)

jayfro
fuente
1

Yo uso SMplayer YouTube. Viene con Smplayer que instala en el centro de software ubuntu. Graba videos de youtube. Muy simple y facil de usar.

usuario297921
fuente
Puedo confirmar que esto FUNCIONA. Ubuntu 14.04. No puedo creer que haya desperdiciado mi tiempo probando todas las respuestas aquí y en todas partes en Internet sin éxito hasta que llegué a esto ... Solo busqué SMPlayer en el centro de software, lo instalé, pegué la dirección de Internet y guardé el video, en el formato y tamaño de mi elección ...: D
PFROLIM
1

Yo uso minitubeun cliente de youtube que ALMACENA archivos flash/tmp

usuario20043
fuente
1

Este script hará eso:

#!/bin/bash
PATERN="libflashplayer"
ALL_PID=`pgrep -f $PATERN`

if [ $? -eq 1 ]
then
echo ERROR: Flashplayer not runnig
exit 1
 fi


 for PID in $ALL_PID
 do

OUTFILES=`ls -lt1 /proc/$PID/fd | grep '/tmp' | sed 's/^.*\/tmp\///' | sed 's/\ .*$//'`
INFD=`ls -lt1 /proc/$PID/fd | grep '/tmp' | cut -f 9 -d \ `


# nazev souboru do pole
i=0;
for out in $OUTFILES
do
    i=`expr $i + 1`
    NAMEFILE[$i]=$out

done

# nazev file desktiptoru do pole
i=0;
for out in $INFD
do
    i=`expr $i + 1`
    NAMEFD[$i]=$out
done



# ulozeni video dat
i=0;
for outfd in $OUTFILES
do
    i=`expr $i + 1`
    #echo ${NAMEFILE[$i]} ${NAMEFD[$i]}

    cat /proc/$PID/fd/${NAMEFD[$i]} > ${NAMEFILE[$i]}.flv
done

done
chlumma1
fuente
0

Mozilla parece cambiar la ubicación con demasiada frecuencia. Además, el nombre del búfer no es el mismo que el video, por lo que también es difícil encontrar el actual desde el montón. Por lo tanto, guardar el archivo en caché no es una solución consistente. Si está bien instalar un programa de escritorio, ClipGrab es la mejor herramienta que existe. Usted puede

  1. Busca videos.
  2. Seleccione la calidad del video de youtube para descargar.
  3. Seleccione el formato de video para descargar.
  4. Solo puede dar una URL de video de YouTube y descargará el archivo.

ClipGrab para descargar videos de youtube en Ubuntu .

Arunskrish
fuente
0

También puede usar keepvid.com para muchos sitios de transmisión de video. Sin embargo, requiere que Java esté en sus máquinas. Una vez instalado, simplemente pegue el enlace de la URL y guárdelo en una variedad de formatos, incluidos mp4 o WebM

mattibuntu
fuente
0

El método más sencillo es utilizar el complemento "CacheViewer Continued 0.8" para firefox

después de instalar, presione ctrl + shift + c para abrir y luego presione mostrar todo, luego de que pueda buscar un caché en particular como jpeg, flv cualquier cosa ... haga clic izquierdo en el elemento le dará la opción de guardar, guardar dándole la extensión requerida como .flv para video flash y .jpeg para jpeg y viceversa ingrese la descripción de la imagen aquí

enlace para el complemento https://addons.mozilla.org/en-US/firefox/addon/cacheviewer-continued/?src=api

gunjan parashar
fuente