wake-up-neo.com

Wie kann ich Chrome Cache-Dateien lesen?

Ein Forum, das ich häufig besuchte, war heute ausgefallen, und bei der Wiederherstellung stellte ich fest, dass die letzten zwei Tage der Veröffentlichung von Foren vollständig zurückgesetzt wurden. 

Unnötig zu sagen, ich würde gerne zurückbekommen, welche Daten ich aus dem Verlust des Forums gewinnen kann, und ich hoffe, ich habe mindestens einige davon in den von Chrome erstellten Cache-Dateien gespeichert.

Ich habe zwei Probleme - die Cache-Dateien haben keinen Dateityp, und ich bin mir nicht sicher, wie man sie auf intelligente Weise liest (der Versuch, sie in Chrome selbst zu öffnen, scheint sie im .gz-Format "neu herunterzuladen") ein ton von Cache-Dateien. 

Irgendwelche Vorschläge zum Lesen und Sortieren dieser Dateien? (Eine einfache String-Suche sollte meine Bedürfnisse erfüllen.)

21
Raven Dreamer

Testen Sie Chrome Cache View von NirSoft (kostenlos).

20
yakatz

EDIT: Die unten stehende Antwort funktioniert nicht mehr. hier


Öffnen Sie in Chrome oder Opera eine neue Registerkarte und navigieren Sie zu chrome://view-http-cache/.

Klicken Sie auf die Datei, die Sie anzeigen möchten. Sie sollten dann eine Seite mit einer Menge Text und Zahlen sehen. Kopieren Sie den gesamten Text auf dieser Seite. Fügen Sie ihn in das Textfeld darunter ein.

Drücken Sie "Go" . Die zwischengespeicherten Daten werden im Abschnitt Ergebnisse unten angezeigt.

31
A. Zalonis

Chrome speichert den Cache als Hex-Dump. OSX wird mit xxd installiert, einem Befehlszeilentool zum Konvertieren von Hex-Dumps. Es ist mir gelungen, ein JPG aus dem HTTP-Cache meines Chrome unter OSX mithilfe der folgenden Schritte wiederherzustellen:

  1. Gehe zu: chrome: // cache
  2. Suchen Sie die Datei, die Sie wiederherstellen möchten, und klicken Sie auf den Link.
  3. Kopieren Sie den 4. Abschnitt in Ihre Zwischenablage. Dies ist der Inhalt der Datei. 
  4. Befolgen Sie die Schritte auf dieser Seite, um Ihre Zwischenablage in das Python-Skript zu pipsen, das wiederum nach xxd leitet, um die Datei aus dem Hex-Dump wiederherzustellen: https://Gist.github.com/andychase/6513075

Ihr endgültiger Befehl sollte folgendermaßen aussehen:

pbpaste | python chrome_xxd.py | xxd -r - image.jpg

Wenn Sie sich nicht sicher sind, welcher Abschnitt der Cache-Ausgabe von Chrome der Inhalt des Hex-Dumps ist, werfen Sie einen Blick auf diese Seite: http://www.sparxeng.com/blog/wp-content/uploads/ 2013/03/chrome_cache_html_report.png

Bildquelle: http://www.sparxeng.com/blog/software/recovering-images-from-google-chrome-browser-cache

Weitere Informationen zu XXD: http://linuxcommand.org/man_pages/xxd1.html

Danke an Mathias Bynens von oben, dass er mich in die richtige Richtung geschickt hat.

9
k0nG

Wenn die wiederherzustellende Datei Content-Encoding: gzip im Header-Abschnitt hat und Sie Linux verwenden (oder wie in meinem Fall Cygwin installiert haben), können Sie Folgendes tun:

  1. besuchen Sie chrome: // view-http-cache/und klicken Sie auf die Seite, die Sie wiederherstellen möchten
  2. kopiere den letzten (vierten) Abschnitt der Seite wörtlich in eine Textdatei (sprich: a.txt)
  3. xxd -r a.txt| gzip -d 

Beachten Sie, dass andere Antworten die Weitergabe der Option -p an xxd vorschlagen. Ich hatte Probleme damit, weil der vierte Abschnitt des Caches nicht im "Postscript-Standard-Hexdump-Stil", sondern in einem "Standardstil" ist. 

Es scheint auch nicht notwendig zu sein, doppelte Leerzeichen durch ein einzelnes Leerzeichen zu ersetzen, wie dies bei chrome_xxd.py der Fall ist (falls dies erforderlich ist, können Sie sed 's/ / /g' dafür verwenden).

8
qbolec

Sie können zwischengespeicherte Dateien nur mit Chrome lesen. 

Chrome verfügt über eine Funktion mit der Bezeichnung Gespeicherte Kopie anzeigen:

Schaltfläche "Gespeicherte Kopie anzeigen" Mac, Windows, Linux, Chrome OS, Android

Wenn eine Seite nicht geladen wird und eine veraltete Kopie der Seite im Browser-Cache vorhanden ist, wird eine Schaltfläche angezeigt, über die der Benutzer diese veraltete Kopie laden kann. Bei der primären Aktivierungsauswahl wird die Schaltfläche auf der Fehlerseite an der markantesten Position angezeigt. Durch die sekundäre Aktivierungsauswahl wird die Schaltfläche zum erneuten Laden sekundär. # Show-gespeicherte Kopie

Trennen Sie zuerst die Verbindung zum Internet, um sicherzustellen, dass der Browser den Cache-Eintrag nicht überschreibt. Navigieren Sie dann zu chrome://flags/#show-saved-copy und setzen Sie den Flag-Wert auf Enable: Primary. Nach dem Neustart des Browsers wird die Schaltfläche "Gespeicherte Kopie anzeigen" aktiviert. Fügen Sie nun die zwischengespeicherte Datei-URI in die Adressleiste des Browsers ein und drücken Sie die Eingabetaste. Chrome zeigt Folgendes an: Neben der Schaltfläche "Gespeicherte Kopie anzeigen" gibt es keine Internetverbindungsseite: enter image description here

Nachdem Sie auf die Schaltfläche geklickt haben, zeigt der Browser eine zwischengespeicherte Datei an.

7
Leonid Vasilev

Ich hatte etwas Glück mit diesem Open-Source-Python-Projekt, das scheinbar inaktiv war: https://github.com/JRBANCEL/Chromagnon

Ich rannte:

python2 Chromagnon/chromagnonCache.py path/to/Chrome/Cache -o browsable_cache/

Und ich habe einen lokal durchsuchbaren Ausschnitt aus meinem Cache für geöffnete Tabs erhalten.

3
Lucas Cimon

Es wurde absichtlich entfernt und wird nicht wiederkommen.

Beide chrome://cache und chrome://view-http-cache wurden ab chrome 66 entfernt. Sie funktionieren in Version 65.

Workaround

Sie können das chrome://chrome-urls/ für eine vollständige Liste der internen Chrome URLs.

Die einzige Umgehung, die mir in den Sinn kommt, ist die Verwendung von menu/more tools/developer tools und mit einem Network Tab ausgewählt.

Der Grund, warum es entfernt wurde, ist dieser Fehler:

Die Diskussion:

2
Shabeer Sha

Ich habe ein kleines dummes Skript gemacht, das JPG- und PNG-Dateien extrahiert:

#!/usr/bin/php
<?php
 $dir="/home/user/.cache/chromium/Default/Cache/";//Chrome or chromium cache folder. 
 $ppl="/home/user/Desktop/temporary/"; // Place for extracted files 

 $list=scandir($dir);
 foreach ($list as $filename)
 {

 if (is_file($dir.$filename))
    {
        $cont=file_get_contents($dir.$filename);
        if  (strstr($cont,'JFIF'))
        {
            echo ($filename."  JPEG \n");
            $start=(strpos($cont,"JFIF",0)-6);
            $end=strpos($cont,"HTTP/1.1 200 OK",0);
            $cont=substr($cont,$start,$end-6);
            $wholename=$ppl.$filename.".jpg";
            file_put_contents($wholename,$cont);
            echo("Saving :".$wholename." \n" );


                }
        elseif  (strstr($cont,"\211PNG"))
        {
            echo ($filename."  PNG \n");
            $start=(strpos($cont,"PNG",0)-1);
            $end=strpos($cont,"HTTP/1.1 200 OK",0);
            $cont=substr($cont,$start,$end-1);
            $wholename=$ppl.$filename.".png";
            file_put_contents($wholename,$cont);
            echo("Saving :".$wholename." \n" );


                }
        else
        {
            echo ($filename."  UNKNOWN \n");
        }
    }
 }
?>
2
BeginnerForever

Beschreibung des Google Chrome-Cache-Dateiformats .

Cache-Liste der Dateien, siehe URLs (Kopieren und Einfügen in die Adressleiste Ihres Browsers): chrome://cache/ oder chrome://view -http-cache/

Cache-Ordner in Linux: $~/.cache/google-chrome/Default/Cache

Bestimmen wir in der Datei GZIP-Kodierung:

$ head f84358af102b1064_0 | hexdump -C | grep --before-context=100 --after-context=5 "1f 8b 08"

Extrahieren Sie die Chrome-Cache-Datei um eine Zeile in PHP (ohne Header, CRC32 und ISIZE-Block):

$ php -r "echo gzinflate(substr(strchr(file_get_contents('f84358af102b1064_0'), \"\x1f\x8b\x08\"), 10, -8));"

0
Rin Nas

Der JPEXS Free Flash Decompiler verfügt über Java-Code, um dies unter im Quelltextbaum zu tun sowohl für Chrome als auch für Firefox (jedoch keine Unterstützung für Firefoxs neueren Cache2).

0
hemisphire