7z 头部错误 数据错误,使用py7zlib解压缩7z归档文件可得到*** ValueError:解压缩期间出现数据错误...

My code is as follows (from here: Example of how to use PyLZMA)

import py7zlib

...

#filename.__class__ is

archive = py7zlib.Archive7z(filename)

data = archive.getmember(archive.getnames()[0]).read()

The error that I get is:

*** ValueError: data error during decompression

The archive I am testing with is a driver compressed in 7z downloaded from the manufacturer's website. I have also used 7zip to create a 7z archive to test with, but I get the same result.

解决方案

I suggest you open your file first, then use 'py7zlib' package. I have used this method to read the file successfully.

content=open(filename,"rb")

archive = py7zlib.Archive7z(content)

data = archive.getmember(archive.getnames()[0]).read()