Wo speichert Chromium die YouTube-Videodateien?

8

Ich weiß, dass Internet Explorer unter Windows .flvtemporäre Dateien in einem temporären Ordner ( C:\Users\%username%\AppData\Local\Microsoft\Windows\Temporary Internet Files) speichert, wenn YouTube angezeigt wird. Und das gleiche machen und Google Chrome in Windows ( C:\Users\%username%\AppData\Local\Google\Chrome\User Data\Default\Cache). Es ist also einfach, eine Kopie dieser .flvDatei zu finden.

Wie wäre es mit Chrom in Ubuntu? Speichert es temporäre Browsing-Daten und wo?

Radu Rădeanu
quelle
Wenn Sie nur eine Kopie einiger YouTube-Videos haben möchten, würde ich empfehlen, ein youtube-dlBefehlszeilenprogramm zu verwenden, um das beste verfügbare Video abzurufen. Kurz gesagt sudo apt install youtube-dlund später cd ~/Videos && youtube-dl "https://youtu.be/ESUCEaOUx_M".
Mikko Rantalainen

Antworten:

11

Ich habe ein kleines Bash-Skript geschrieben, das die hervorragende Lösung von Radu automatisiert :

#!/bin/bash

pidNum=$(ps ax | grep flash | grep chromium | grep -v "grep" | sed -e 's/^ *//g' -e 's/ *$//g' | tr -s " " | cut -d " " -f 1)
procNum=$(ls -l /proc/${pidNum}/fd | grep Flash | tr -s " " | cut -d " " -f 9)

filename=$1
if [[ "$filename" == "" ]]; then
    filename=$procNum
fi

echo "Copying /proc/${pidNum}/fd/${procNum} to '${filename}.flv'"
cp /proc/${pidNum}/fd/${procNum} "${filename}.flv"
ls -lah "${filename}.flv"
mcbarron
quelle
1
Ich fürchte, es funktioniert nicht mit neueren Versionen von Chrome und Chromium (Chromium 40.0.2214.111 Ubuntu 14.04). Irgendeine Idee warum?
Leszek
16

Ich habe ein wenig recherchiert und jetzt kann ich mit der Antwort kommen, die nicht so einfach ist, wie es auf den ersten Blick scheint.

Ich habe viel bei Google gesucht und fast alles zeigt auf den ~/.cache/chromium/DefaultOrdner. In diesem Ordner sollten Sie die Cache-Dateien von Google Chrome finden. Es gibt jedoch keine großen Flash-Videodateien (wie bei YouTube), sondern nur kleine.

Um die Frage zu beantworten, kam ich am Ende zu folgenden Schlussfolgerungen:

  • Zuerst musst du ein YouTube-Video öffnen und es aus dem Internet streamen lassen.
  • In einem Terminal ( Ctrl+ Alt+ T) sollten Sie die PID von Chromium erhalten, die das Flash Player-Plugin verwendet. Sie können verschiedene Befehle verwenden, aber psdas reicht völlig aus : ps ax | grep flash.
  • Sobald Sie diese PID haben, können Sie den Namen der Videodatei herausfinden, die gerade auf Youtube gestreamt wurde : ls -l /proc/[*PID*]/fd | grep Flash. Sie werden als Ergebnis so etwas sehen:

    lrwx------ 1 [*user*] [*user*] 64 mai 2 09:48 [*video file name - is a number*] -> /tmp/FlashXX4PeKRY (deleted)`
    

    Und hier ist die Antwort auf die Frage: Die letzte auf YouTube gestreamte und auf dem System zwischengespeicherte Videodatei lautet:

    /proc/[*PID*]/fd/[*video file name - is a number*]
    
  • Wenn Sie möchten, sollten Sie sie jetzt an eine beliebige Stelle im System kopieren:

    cp /proc/[*PID*]/fd/[*video file name - is a number*] ~/Videos/[*new video file name*].flv
    

    Und jetzt haben Sie das letzte auf Youtube angesehene Video in Ihrer persönlichen Videosammlung.

Geben Sie hier die Bildbeschreibung ein

Radu Rădeanu
quelle
1

Ich mache es manuell so: Definiere diesen Alias ​​in /etc/bash.bashrc

alias findflash='find /proc/ -maxdepth 1 -type d -exec lsfd.sh {} \;'

und erstellen Sie dieses Skript in /usr/local/bin/lsfd.sh

#!/bin/bash
ls -l $1/fd/ 2>/dev/null 3>/dev/null| grep -i 'flash' 1>/dev/null  2>/dev/null 3>/dev/null;
if [ $? -eq "0" ]; 
then 
echo $1/fd/;
ls -l $1/fd/ | grep -i 'flash';
fi

Ergebnis:

root@juanmf-V570:/tmp# findflash 
/proc/31591/fd/
lrwx------ 1 root root 64 Aug 19 23:59 37 -> /home/juanmf/.config/google-chrome/Default/Pepper Data/Shockwave Flash/.com.google.Chrome.9Oc0fE (deleted)
lrwx------ 1 root root 64 Aug 19 23:59 38 -> /home/juanmf/.config/google-chrome/Default/Pepper Data/Shockwave Flash/.com.google.Chrome.hcEvxv (deleted)

dann weiß ich, wo sich die Dateien befinden und benutze mplayer, um zu sehen, welche ich will. dann manuell kopieren.

juanmf
quelle
0

Chromium speichert seine Cache- Dateien in verschiedenen Ordnern, die sich von Zeit zu Zeit ändern können (abhängig von der Version?). Vielleicht sollten Sie alle durchsuchen, um das zu finden, wonach Sie suchen.

Und sie sind:

  • / home / $ USER / Media Cache
  • /home/$USER/.cache/chromium/Default/Cache
  • /home/$USER/.cache/chromium/Default/Media Cache
  • /home/$USER/.config/chromium/Default/Cache
  • /home/$USER/.config/chromium/Default/Media Cache

Die Youtube- Dateien, an denen Sie interessiert sind, befinden sich wahrscheinlich in einem der Media Cache- Ordner, jedoch ohne Dateierweiterung. Glücklicherweise erkennt Linux im Gegensatz zu Windows häufig Dateitypen, unabhängig von der Erweiterung. Sie erkennen sie möglicherweise an Symbolen für Videodateien oder sogar an Miniaturansichten .

Sadi
quelle
In diesen Ordnern befinden sich keine großen Flash-Videodateien, sondern nur kleine.
Radu Rădeanu
0

Ich habe ein neues Bash-Skript zum Herunterladen von Flash-Videodateien mit Ubuntu 16.04 und Chrom Version 62 geschrieben . dank dieses beispiels von mcbarron

Sie können auch das Github-Repository anzeigen

#! / bin / bash
echo "Crawlen nach Flash-Dateien."
getPidNum = $ (lsof | grep Flash | grep gelöscht | tr -s "" | cut -d "" -f 2)
pidNum = ""
für linePidNum in $ {getPidNum}; tun
    if [["$ pidNum"! = "$ linePidNum"]]; dann
        pidNum = $ linePidNum
        echo "PID-Nummer ist $ {pidNum}"
        getProcNum = $ (ls -l / proc / $ {pidNum} / fd | grep Flash | tr -s "" | cut -d "" -f 9)
        procNum = ""
        für lineProcNum in $ {getProcNum}; tun
            if [["$ procNum"! = "$ lineProcNum"]]; dann
                procNum = $ lineProcNum
                echo "Dateinummer ist $ {procNum}"
                echo "Kopieren von / proc / $ {pidNum} / fd / $ {procNum} nach '$ {procNum} .flv'"
                cp / proc / $ {pidNum} / fd / $ {procNum} "$ {procNum} .flv"
            fi
        erledigt
    fi
erledigt
Chemiloshan
quelle
-2

Chromium wirft Dateien .cache/chromium/Defaultunter die Ordner Cacheund Media Cache.

JoshStrobl
quelle
Hallo, wenn Sie etwas posten, können Sie die Formatierungsfunktionen nutzen, die beim Verfassen Ihrer Antwort direkt über dem Textfeld angezeigt werden. Dies ist grundlegendes Markdown-Zeug. Sie können sich einige bearbeitete Fragen und Antworten ansehen, um zu sehen, wie es gemacht wird.
Ich habe dort gesucht, aber nichts über Videodateien von You Tube (oder anderen). Also noch nicht die richtige Antwort ... noch nicht.
Radu Rădeanu
@ vasa1 -> Hey, wie wäre es, wenn du meine Beiträge nicht bearbeitest? Das wäre großartig. Mir ist klar, wie man Markdown verwendet. Radu -> Es wird Ihnen nicht unbedingt die FLV-Datei geben, Sie müssen so ziemlich alle Dateien in FLV konvertieren, um herauszufinden, welches ein Video ist. Es ist wirklich am besten, so etwas wie KeepVid zu verwenden. In Bezug auf "nicht die richtige Antwort", tut mir leid, Sie zu enttäuschen, aber es ist. Hier speichern Chromium und Chrome alle zwischengespeicherten Dateien.
JoshStrobl
@ JoshStrobl, tut mir leid!