Ich benutze die eingebaute lzma Python, um komprimierte Daten zu dekodieren. Abhängig von dem Stück Daten, bekomme ich die folgende Ausnahme:Python LZMA: Komprimierte Daten beendet, bevor der End-of-Stream-Marker erreicht wurde
Compressed data ended before the end-of-stream marker was reached
Die Daten sind NICHT beschädigt. Es kann mit anderen Tools korrekt dekomprimiert werden, also muss es ein Fehler in der Bibliothek sein. Es gibt andere Leute das gleiche Problem auftritt:
- http://bugs.python.org/issue21872
- https://github.com/peterjc/backports.lzma/issues/6
- Downloading large file in python error: Compressed file ended before the end-of-stream marker was reached
Leider keine scheint noch eine Lösung gefunden zu haben. Zumindest eines, das auf Python 3.5 funktioniert.
Wie kann ich dieses Problem lösen? Gibt es Arbeit?
Interessant. In diesem Fall würde ich empfehlen, die Spezifikation für den Algorithmus zu überprüfen. Es klingt, als wären andere Tools toleranter gegenüber falsch codierten Puffern oder fehlerhaftem Pufferkopieren. Abhängig von der Spezifikation ist es möglich, dass der Fehler in der Kodierung und/oder Übertragung liegt, NICHT in der Dekodierung. Ich mache nur einen Vorschlag. Könnte weit weg sein. –