it-swarm.com.de

Wie kann ich über Streaming-Websites auf Flash-Dateien zugreifen?

In Maverick gab es eine Option zum Herunterladen von Flash-Videos von Websites wie YouTube, Vimeo usw., indem die flashxx** -Datei im /tmp -Verzeichnis an einen anderen Speicherort kopiert wurde, bevor das Fenster geschlossen wurde. Aber in Firefox 4 in Natty funktioniert das nicht mehr. Warum?

30
avi

Durch ein Update des Flash-Plugins wurde der Speicherort von /tmp in das Firefox-Cache-Verzeichnis geändert (z. B. ~/.mozilla/firefox/bq95m4w1.default/Cache). Leider ist die zwischengespeicherte Flash-Datei nicht so leicht zu finden wie zuvor, aber es ist möglich.

Der folgende Befehl listet alle Flash-Dateien in Ihrem Firefox-Cache auf.

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

Auf neueren Versionen von Ubuntu versuchen

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

Sie können mehrere Firefox-Addons verwenden, um die FLV-Dateien von vielen Websites wie Youtube zu extrahieren.

Im Folgenden wird gezeigt, wie dies mit der neuesten Version des Flash-Plugins MANUELL durchgeführt wird.

  1. Besuchen Sie das YouTube-Video und warten Sie, bis es vollständig heruntergeladen ist.
  2. Führen Sie dann den Befehl von der Befehlszeile aus

    $ lsof -n | grep Flash

    das zeigt die Dateien (gerade Speicher Dateien!) und filtert nach denen, die Flash im Namen haben.

  3. Du bekommst so etwas wie

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

    Jetzt gibt es einen /tmp/FlashXXVkHEM6, der jedoch gelöscht wurde.

  4. Wenn eine Datei unter Linux gelöscht wird, ist sie tatsächlich erst dann gelöscht, wenn alle Programme, die sie zuvor geöffnet haben, geschlossen wurden. Das heißt, das Flash-Plugin verwendet einen Trick, um die Datei/tmp/FlashXXVkHEM6 auszublenden. Es schafft es und sofort deletes es. Da das Flash-Plugin jedoch weiterhin ausgeführt wird, kann es es anscheinend weiterhin verwenden.

  5. In der obigen Zeile notieren wir die Nummer 2461, die die Prozess-ID ist. In deinem Fall wird es wahrscheinlich anders sein. Dann renne

    $ cd /proc/2461/fd

    und schließlich ausführen

    $ ls -l

    Dies zeigt Ihnen die Speicherdateien und speziell

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

    Die Nummer '17' (in meinem Fall) ist der Dateiname, mit dem Sie auf den gelöschten /tmp/FlashXXVkHEM6 zugreifen können. Deshalb einfach laufen

    $ cp 17 /tmp/myyoutubevideo.flv

    und du stellst das Youtube Video wieder her!

Das ist es! Sie haben das Youtube-Video manuell wiederhergestellt!

28
user4124

Wenn Sie zu Ihrem/proc-Ordner navigieren, sehen Sie eine Reihe von Ordnern, die alle numerisch benannt sind, einschließlich eines Ordners, der mit der Nummer im zweiten Feld übereinstimmt.

Navigieren Sie nun zu diesem Ordner und dann zu seinem Unterordner "fd". In diesem Ordner sehen Sie eine ganze Auswahl an Zahlen. Diese beziehen sich auf die Dateideskriptoren selbst.

Führen Sie in diesem Ordner ls -l aus, und Sie werden sehen, dass jede dieser Nummern entweder mit Pipes, Sockets oder Dateien verknüpft ist.

Innerhalb dieses Feldes wird die Nummer aus dem vierten Feld symbolisch mit der/tmp/Flash * -Datei verknüpft, die wir zuvor gefunden haben.

Um zu testen, ob dies die richtige Datei ist, können Sie sie über mplayer oder vlc (mplayer filedescriptornumber/vlc filedescriptornumber) ausführen. Wenn Sie den Dateinamen nicht finden können, versuchen Sie es mit ls -l | grep Flash.

Probieren Sie einfach diesen Befehl in der Konsole aus:

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

Die Ausgabe wird ungefähr so ​​aussehen:

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

Daraufhin werden alle heruntergeladenen Flash-Streams aufgelistet. Für dieses Beispiel gibt es 2 Flash-Videos von meinem Firefox 4-Browser. Wenn Sie es kopieren möchten, verwenden Sie einfach diesen Befehl:

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

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

7
squallbayu

Dieses kleine Skript speichert Ihre heruntergeladenen Flash-Dateien in einem benutzerdefinierten Verzeichnis.

  1. legen Sie das Verzeichnis fest, in dem die Dateien gespeichert werden sollen, z. B. ~/Videos/flvs

    mkdir ~/Videos/flvs
    
  2. öffne gedit und kopiere und füge dieses Skript ein.

    #!/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. speichern Sie die Datei unter dem Namen saveflashall.sh und fügen Sie der Datei dann ausführbare Berechtigungen hinzu

    chmod +x saveflashall.sh
    
  4. dann starte es.

    ./saveflashall.sh
    

es würde dann die Dateien im ersten oben erstellten Ordner öffnen. Angepasst, um alle Dateien (für MPEG und MP4) anstelle von nur FLVs einzuschließen.

Credits gehen an http://desdecode.blogspot.com/2011/04/saving-watched-online-videos-linux.html

5
dumb906

Soweit ich weiß, liegt das nicht an Firefox oder Natty, sondern an einem Flash-Update ...

Sie können den http-Stream mit wireshark abrufen oder ein Tool wie youtube-dl verwenden, um die Filmdatei abzurufen.

Denken Sie jedoch daran, dass dies möglicherweise nicht legal ist. Überprüfen Sie daher Ihre örtlichen Gesetze ...

4
LassePoulsen

Sie sollten flashgot verwenden, um die Videos herunterzuladen.

3
RolandiXor

buntu 12.04 (Precise) - Firefox 11 Instructions Eine modifizierte Version des Bash-Skripts von chlumma1.

Speichern Sie den folgenden Code mit einem Texteditor in der Datei "getvids.sh". Verschieben Sie es an den Ort, an dem Sie Videos speichern möchten. Klicken Sie mit der rechten Maustaste auf die Datei, wechseln Sie zu Eigenschaften, ändern Sie die Berechtigungen zu "Ausführung als Programm zulassen".

Alles, was Sie tun müssen, ist auf das Skript zu klicken, "In Terminal ausführen" auszuwählen und alle Videodateien in diesem Verzeichnis zu speichern. Um das gesamte Video zu speichern, muss es in Ihrem Browser vollständig geladen sein. Es speichert Videos von fast jeder Website, einschließlich Youtube, Vimeo, Dailymotion, Metacafe, Liveleak, Facebook. Löschen Sie einfach alle nicht gewünschten Videodateien.

(Wenn ein gewünschtes Video nicht gespeichert wird, verwendet die Website wahrscheinlich ein proprietäres Stream-Format, das von keinem Cache-Abrufprogramm gespeichert werden kann. Beispiele: Hulu, Netflix, einige YouTube-Videos?) Außerdem ist der VLC-Player ein ideal zum Ansehen von Flash-Videos.

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

Diejenigen, die etwas über das Terminal wissen, können die ersten beiden Variablen bearbeiten und ein wenig zusätzliche Funktionalität erhalten. Um die Dateien live anzuzeigen, können Sie dies alternativ in ein Terminal eingeben, um herauszufinden, wo sie sich befinden. for i in $(pgrep -f libflash); do find /proc/$i/fd/ -ls | grep "/tmp/Flash" | awk '{ print $11 }'; done

PS. Auch ausgezeichnete Arbeit chlumma1, aber lass die C-Programmierstil-Schleifen ein bisschen;)

3
Sepero

Aktuelle Versionen des Flash-Plugins verbergen die temporäre Datei, indem sie als gelöscht markiert werden. Praktischerweise wird der Videostream in eine "gelöschte Datei" heruntergeladen. Selbst wenn eine Datei gelöscht wird, können Sie ihren Dateideskriptor und folglich den Dateiinhalt finden, wenn die Datei von einem Prozess geöffnet wird.

Dieses einfache Skript druckt die Dateideskriptoren der geöffneten Flash-Videos aus:

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

Und Sie möchten wahrscheinlich eine reguläre Datei aus dem Dateideskriptor erstellen, zum Beispiel:

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

Andernfalls ist der Dateideskriptor nicht sehr praktisch (denken Sie daran, es ist eine gelöschte Datei!)

Die Methode sollte unabhängig von Ihrem Browser funktionieren.

2
janos

Hey, dieses Problem gab es schon in 10.10. Also, um es zu lösen, versuchen Sie Folgendes:

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.

[Zitiert von dieser Seite: Gepostet von chetancrasta Beitrag anzeigen ]

Ich hoffe, dies wird dir helfen. Lassen Sie mich wissen, ob das funktioniert.

1
Vito

Versuchen Sie für eine allgemein anwendbare Methode, die mit chrome oder Firefox funktioniert, dieses kleine Programm mit dem Namen flashcache . Es kopiert gerade abgespielte Flash-Videos in das aktuelle Verzeichnis.

Mein Patch fügt die Option -p hinzu, mit der das Skript die Videos mit mplayer wiedergibt, anstatt Kopien der Dateien zu erstellen.

1
loevborg

Ich benutze SMplayer YouTube. Es wird mit Smplayer geliefert, den Sie im Ubuntu Software Center installieren. Es zeichnet YouTube-Videos auf. sehr einfach und leicht zu bedienen.

1
user297921

Ich verwende minitube, einen Youtube-Client, der Flash-Dateien auf /tmp SPEICHERT.

1
user20043

Obwohl ich die Frage nicht direkt beantwortete, stieß ich auf dasselbe Problem und fand nach einiger Suche Clipgrab , das viel einfacher zu verwenden ist .

1
Cas

folge diesem Link (~/.mozilla/firefox/ewzggcll.default/Cache)

Es sei denn, ich bin wirklich verwirrt (glaube nicht), dass "ewzggcll" nicht in Ihrer Maschine sein wird. Was Sie dort finden werden, ist eine zufällige Sammlung von Buchstaben (und möglicherweise Zahlen?), Die sehr wahrscheinlich nur in Ihrer Linux- und Firefox-Installation vorkommt. Trotzdem ist diese merkwürdig aussehende zufällige Sammlung wichtig, da sie für den Zugriff auf den Cache unerlässlich ist.

Hoffe das hilft! (HTH)

1
jayfro

Dieses Skript erledigt das:

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

Sie können diesen Befehl in einem Terminal versuchen

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

die einfachste Methode ist die Verwendung des Addons "CacheViewer Continued 0.8" für Firefox

nach der Installation drücken Sie STRG + UMSCHALT + C, um zu öffnen, und drücken Sie dann ALLE ANZEIGEN. Nachdem Sie nach einem bestimmten Cache wie JPEG oder FLV gesucht haben, können Sie ihn mit der linken Maustaste speichern Geben Sie die erforderliche Erweiterung wie .flv für Flash-Video und .jpeg für JPEG und umgekehrt an enter image description here

link für das Addon https://addons.mozilla.org/en-US/firefox/addon/cacheviewer-continued/?src=api

0
gunjan parashar

Sie können keepvid.com auch für viele Video-Streaming-Sites verwenden. Allerdings muss Java auf Ihren Computern installiert sein. Einmal installiert, fügen Sie einfach den URL-Link ein und speichern Sie ihn in einer Vielzahl von Formaten, einschließlich mp4 oder WebM

0
mattibuntu

Das ist noch möglich.

Sie können das Shell-Skript von in diesem Beitrag erfahren Sie, wie Sie alle Flash-Videos mit VLC öffnen/abspielen .

Um alle Videos zu kopieren, müssen Sie in der letzten Zeile des Skripts vlc durch cp ersetzen und am Ende derselben Zeile ein Zielverzeichnis angeben.

0
James

Mozilla scheint den Speicherort zu häufig zu ändern. Außerdem ist der Name des Puffers nicht mit dem des Videos identisch, sodass es auch schwierig ist, den entsprechenden Namen aus dem Heap zu ermitteln. Das Speichern der zwischengespeicherten Datei ist daher keine konsistente Lösung. Wenn die Installation eines Desktop-Programms in Ordnung ist, ist ClipGrab das beste Tool auf dem Markt. Du kannst

  1. Suche nach Videos.
  2. Wählen Sie die Qualität des herunterzuladenden YouTube-Videos.
  3. Wählen Sie das Format des herunterzuladenden Videos.
  4. Sie können einfach eine YouTube-Video-URL angeben und die Datei wird heruntergeladen.

ClipGrab zum Herunterladen von YouTube-Videos in Ubunt .

0
arunskrish