Es scheint verschiedene JavaScript + Browser-spezifische Möglichkeiten zu geben, dies zu dekomprimieren, aber gibt es keine Möglichkeit, jsonlz4-Dateien in etwas zu transformieren, unlz4
das gelesen werden kann?
firefox
compression
lz4
l0b0
quelle
quelle
Antworten:
Ich konnte den jsonlz4 mit
lz4json
folgendem Befehl entpacken :quelle
.json.mozlz4
Dateien, z. B. wie unter github.com/andikleen/lz4json/issues/1#issuecomment-336729026 gezeigt (Hinweis für sich selbst: Denken Sie daran, denken Sie daran,gmake
unter FreeBSD ...).liblz4-dev
vor dem Erstellen installiert ). Das Tool von avih, OTOH, hat bei mir perfekt funktioniert.Speichern Sie dieses Skript in einer Datei, zB
mozlz4
:quelle
import lz4
zuimport lz4.block as lz4
, aber es immer noch nicht funktioniert hat . Einige Bytes versus Zeichenfolgenfehler. OTOH dieses Skript arbeitete mit der Importänderung$ pip install lz4
.Eigentlich sind fast alle Firefox-Profil- LZ4- Dateien MozLZ4- Dateien. Dies bedeutet, dass sie den gleichen "Dateiformat-Header" haben. Ausgenommen eine Datei. Ich spreche über die Datei webext.sc.lz4 . Es hat einen
mozJSSCLz40v001\0
Dateikopf und möglicherweise einesc
Packung, um eine Gruppe von Dateien in einen Byte-Stream zu packen.Es ist ein Firefox - Add - on oder Kompresse lesen .mozlz4 Textdateien mozlz4-edit
quelle
Ausreichend hartnäckiges Googeln führt dazu, dass viele Lösungen gefunden werden, aber die meisten davon scheinen entweder (a) durch spätere Änderungen an den zugrunde liegenden Bibliotheken kaputt zu sein oder (b) unnötig komplex (zumindest nach meinem persönlichen Geschmack), was sie klobig macht in vorhandenen Code ablegen.
Das Folgende scheint zumindest auf Python 2.7 und 3.6 zu funktionieren, wenn eine aktuelle Version der Python LZ4-Bindungen verwendet wird :
Natürlich wird nicht versucht, Eingaben (oder Ausgaben) zu validieren, es ist nicht beabsichtigt, sicher zu sein usw., aber wenn man nur seine eigenen FF-Daten analysieren möchte, wird die grundlegende Arbeit erledigt.
Befehlszeilenversion hier , die im entsprechenden Verzeichnis gespeichert und über die Befehlszeile aufgerufen werden kann als:
quelle