Come posso accedere ai file Flash dai siti Web di streaming?


30

In Maverick, c'era un'opzione per scaricare video Flash da siti come YouTube, Vimeo, ecc. Copiando il flashxx**file nella /tmpdirectory in un'altra posizione prima di chiudere la finestra. Ma in Firefox 4 in Natty, questo non funziona più. Perché?


Se vuoi solo scaricare video, ti consiglio Clipgrab: clipgrab.de/en . Hanno un PPA: launchpad.net/~clipgrab-team
Martin Thoma

Risposte:


26

Un aggiornamento al plug-in flash ha cambiato la posizione dalla /tmpdirectory della cache di Firefox (ad es ~/.mozilla/firefox/bq95m4w1.default/Cache.). Sfortunatamente il file flash nella cache non è facile da trovare come prima, ma è possibile.

Il seguente comando elenca tutti i file flash nella cache di Firefox.

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

Nelle versioni più recenti di Ubuntu provare

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

1
Perché no file ~/.mozilla/firefox/*.default/Cache/* | grep Flash? La directory della cache non sembra avere sottodirectory che potrebbero giustificare l'uso di find.
enzotib,

non funziona probabilmente ha funzionato prima.
stupido

Il file FLV è ancora in / tmp, tuttavia è necessario un trucco speciale per accedervi.
user4124

Vedi la mia risposta di seguito che parla del recupero del file FLV usando il filesystem / proc. Tuttavia, è possibile utilizzare uno dei componenti aggiuntivi di Firefox per eseguire la stessa attività.
user4124,

28

È possibile utilizzare diversi componenti aggiuntivi di Firefox per estrarre i file FLV da molti siti Web come Youtube.

Di seguito mostrerò come farlo manualmente con l'ultima versione del plug-in Flash.

  1. Visita il video di YouTube e attendi che venga scaricato completamente.
  2. Quindi, eseguire dalla riga di comando il comando

    $ lsof -n | grep Flash

    che mostra i file (anche i file di memoria !) e li filtra a quelli che hanno Flashnel loro nome.

  3. Ottieni qualcosa del genere

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

    Ora, c'è un /tmp/FlashXXVkHEM6ma è stato eliminato.

  4. In Linux, se un file viene eliminato, in realtà è sparito solo quando tutti i programmi che lo hanno aperto in precedenza sono chiusi. Cioè, il plug-in Flash sta usando un trucco per nascondere il file / tmp / FlashXXVkHEM6. Lo crea e subito deletes. Ma poiché il plug-in Flash continua a funzionare, a quanto pare può ancora usarlo.

  5. Dalla riga sopra notiamo il numero 2461, che è l'ID del processo. Nel tuo caso sarà probabilmente diverso. Quindi, corri

    $ cd /proc/2461/fd

    e infine eseguire

    $ ls -l

    Questo ti mostrerà i file di memoria, e in particolare

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

    Il numero "17" (nel mio caso) è il nome file che è possibile utilizzare per accedere all'eliminazione /tmp/FlashXXVkHEM6 . Pertanto, esegui semplicemente

    $ cp 17 /tmp/myyoutubevideo.flv

    e ripristini il video di Youtube!

Questo è tutto! Hai recuperato manualmente il video di Youtube!


7

Se vai alla tua cartella / proc, vedrai un gruppo di cartelle tutte nominate numericamente, inclusa una cartella che corrisponde al numero nel secondo campo.

Ora vai a questa cartella, quindi alla sua sottocartella "fd". In questa cartella, vedrai un'intera selezione di numeri. Questi si riferiscono ai descrittori di file stessi.

Esegui ls -lin questa cartella e vedrai che ciascuno di questi numeri è collegato a pipe, socket o file.

All'interno di questo, il numero dal quarto campo sarà simbolicamente collegato al file / tmp / Flash * che abbiamo trovato prima.

Per provare che questo è il file giusto, puoi eseguirlo tramite mplayer o vlc ( mplayer filedescriptornumber/ vlc filedescriptornumber). Se hai problemi a trovare il nome file, prova ls -l | grep Flash.

Per semplicità, prova questo comando nella console:

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

L'output sarà qualcosa del genere:

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

Verranno elencati tutti i flussi flash scaricati. Per questo esempio, ci sono 2 video flash dal mio browser Firefox 4. Se vuoi copiarlo, usa semplicemente questo comando:

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

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


5

Questo piccolo script salverebbe i file flash scaricati in una directory personalizzata.

  1. crea la directory in cui vuoi salvare i file, ad es. ~ / Videos / flvs

    mkdir ~/Videos/flvs
    
  2. apri gedit e copia e incolla questo 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. salva il file come saveflashall.sh, quindi aggiungi le autorizzazioni eseguibili al file

    chmod +x saveflashall.sh
    
  4. quindi eseguirlo.

    ./saveflashall.sh
    

aprirà quindi i file nella prima cartella creata sopra. Personalizzato per includere tutti i file (ha funzionato per mpeg e mp4) anziché solo flvs.

I crediti vanno a http://desdecode.blogspot.com/2011/04/saving-watched-online-videos-linux.html


Ho provato questo ... alcuni video che ho visto da molto tempo sono ora in questa cartella, ma quelli che ho visto in questo momento non lo sono. Perché?
avi,

4

Per quanto ne so questo non è dovuto a Firefox né a Natty, ma a un aggiornamento flash ...

Puoi catturare il flusso http con wiresharko utilizzare uno strumento come youtube-dlottenere il file del film.

Ma ricorda che potrebbe non essere legale, quindi controlla la tua legislazione locale ...


Trucco accurato con il WireShark, ma immagino che potrebbe essere stancante, poiché i video sono di dimensioni abbastanza grandi (più di 10 MB), mentre i pacchetti vengono forniti con un piccolo pezzo di quei dati :)
Rafał Cieślak


3

Ubuntu 12.04 (Preciso) - Istruzioni per Firefox 11 Una versione modificata dello script bash di chlumma1.

Con un editor di testo, salva il codice in basso nel file "getvids.sh". Spostalo nella posizione in cui desideri salvare i video. Fare clic con il tasto destro del mouse sul file, selezionare Proprietà, modificare le autorizzazioni in "Consenti esecuzione come programma".

Tutto quello che devi fare è fare clic sullo script, selezionare "Esegui nel terminale" e salverà tutti i file video in quella directory. Per salvare l'intero video, è necessario completare il caricamento nel browser. Salverà video da quasi tutti i siti Web, inclusi YouTube, Vimeo, dailymotion, Metacafe, Liveleak, Facebook . Elimina semplicemente tutti i file video che non desideri.

(Se un video desiderato non viene salvato, probabilmente il sito Web utilizza un formato stream proprietario che non può essere salvato da alcun programma di recupero della cache. Esempi: Hulu, Netflix, alcuni video di YouTube?) Inoltre, VLC player è un ottimo per guardare video in 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

Chi conosce un po 'il terminale può modificare le prime due variabili e ottenere una funzionalità extra. In alternativa, per visualizzare i file dal vivo, è possibile digitare questo in un terminale per scoprire dove sonofor i in $(pgrep -f libflash); do find /proc/$i/fd/ -ls | grep "/tmp/Flash" | awk '{ print $11 }'; done

PS. Inoltre, eccellente lavoro chlumma1, ma elimina un po 'i cicli di stile C;)


2

Le versioni recenti del plug-in flash nascondono il file temporaneo contrassegnandolo come eliminato. Praticamente il flusso video viene scaricato in un "file eliminato". Tuttavia, anche quando un file viene eliminato, se il file viene aperto da un processo, è possibile trovare il descrittore del file e, di conseguenza, il contenuto del file.

Questo semplice script stampa i descrittori di file dei video Flash aperti:

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

E, probabilmente, si desidera creare un file normale dal descrittore di file, ad esempio:

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

Altrimenti il ​​descrittore di file non è molto conveniente (ricorda, è un file cancellato!)

Il metodo dovrebbe funzionare indipendentemente dal tuo browser.


1

Ehi, questo problema esisteva già nella 10.10. Quindi per risolverlo prova questo:

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.

[citato da questo sito: pubblicato da chetancrasta Visualizza messaggio ]

Spero che questo ti possa aiutare. Fammi sapere se funzionerà.


Penso che tu abbia frainteso la domanda. Il poster originale ha già Flash Player installato e funzionante. Si sta solo chiedendo dove Flash memorizzi i suoi file temporanei.
Jeremy Bicha,

Ya. Destra. Ma penso che si stia chiedendo dove siano finiti i file flash. Con la nuova versione di Adobe Flash Player, sono archiviati come @Woozy già menzionato. @Woozy ha anche affermato che il "file flash memorizzato nella cache non è facile da trovare come prima". Quindi, se si desidera che il file flash sia di nuovo "facile", è possibile effettuare il downgrade del flash player. Di conseguenza i file flash verranno nuovamente archiviati in / tmp ... Spero che tu capisca il mio punto adesso !? O mi sbaglio ?
Vito,

1

Per un metodo generalmente applicabile che funziona con Chrome o Firefox, prova questo piccolo programma chiamato flashcache . Copia i video flash attualmente in fase di riproduzione nella directory corrente.

La mia patch aggiunge l'opzione -pche consente allo script di riprodurre i video utilizzando mplayerinvece di creare copie dei file.


1

Pur non rispondendo direttamente alla domanda, ho riscontrato lo stesso problema e dopo alcune ricerche ho trovato Clipgrab che è molto più facile da usare.


1

Puoi provare questo comando in un terminale

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

1

segui questo link ( ~/.mozilla/firefox/ewzggcll.default/Cache)

A meno che non sia veramente confuso (non la penso così), che "ewzggcll" non sarà nella tua macchina. Quello che troverai è una raccolta casuale di lettere (e forse numeri?) Che è molto probabilmente unica per la tua installazione di Linux e Firefox. Tuttavia, questa raccolta casuale dall'aspetto strano è importante, perché è essenziale per accedere alla cache [s].

Spero che sia di aiuto! (HTH)


1

Uso SMplayer YouTube. Viene fornito con Smplayer che si installa nel centro software di Ubuntu. Registra video di YouTube. molto semplice e facile da usare.


Posso confermare che funziona. Ubuntu 14.04. Non riesco a credere di aver sprecato il mio tempo a provare tutte le risposte qui e in qualsiasi altra parte di Internet senza NESSUN SUCCESSO fino a quando non sono arrivato a questo ... Ho appena cercato SMPlayer nel centro software, installato, incollato l'indirizzo yt e salvato il video, nel formato e nella dimensione di mia scelta ...: D
PFROLIM

1

Uso minitubeun client di YouTube su cui memorizza i file flash/tmp


1

Questo script lo farà:

#!/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

0

Mozilla sembra cambiare la posizione troppo frequentemente. Inoltre, il nome del buffer non è lo stesso del video, quindi è anche difficile trovare quello corretto dall'heap. Pertanto, il salvataggio del file memorizzato nella cache non è una soluzione coerente. Se l'installazione di un programma desktop va bene, ClipGrab è lo strumento migliore in circolazione. Puoi

  1. Cerca video.
  2. Seleziona la qualità del video di YouTube da scaricare.
  3. Seleziona il formato del video da scaricare.
  4. Puoi semplicemente dare un URL del video di YouTube e questo scaricherà il file.

ClipGrab per scaricare i video di YouTube in Ubuntu .


0

Puoi anche utilizzare keepvid.com per molti siti di streaming video. Tuttavia richiede Java per essere sui tuoi computer. Una volta installato è sufficiente incollare il link URL e salvarlo in una varietà di formati tra cui mp4 o WebM


0

il metodo più semplice è utilizzare l'addon "CacheViewer Continued 0.8" per firefox

dopo l'installazione premi ctrl + maiusc + c per aprire e poi premi mostra tutto, lì dopo che puoi cercare una cache particolare come jpeg, flv qualsiasi ...... fai clic sinistro sull'elemento ti darà la possibilità di salvare, salvare dando l'estensione richiesta come .flv per video flash e .jpeg per jpeg e viceversa inserisci qui la descrizione dell'immagine

link per il componente aggiuntivo https://addons.mozilla.org/en-US/firefox/addon/cacheviewer-continued/?src=api



Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.