2013-11-26 52 views
1
过程中的数据错误

我的代码(从这里开始:Example of how to use PyLZMA)如下解压使用py7zlib 7z格式档案给*** ValueError异常:解压

import py7zlib 
... 
#filename.__class__ is <class 'django.core.files.uploadedfile.InMemoryUploadedFile'> 
archive = py7zlib.Archive7z(filename) 
data = archive.getmember(archive.getnames()[0]).read() 

,我得到的错误是:

*** ValueError: data error during decompression 

我正在测试的档案是从制造商网站下载的7z压缩驱动程序。我也用7zip创建了一个7z压缩文件来测试,但是我得到了相同的结果。

+0

根据经验,最好先尝试使用py7zlib压缩某些内容,然后“立即”解压缩它。这会给你一个如何使用代码的想法,我没有这样做py7zlib - 但与其他库 – nrathaus

+0

我遇到同样的问题。你能弄明白吗? – user3820991

+0

我只是试图重新创建问题,但是没有原始文件,我无法复制此问题。我只是尝试用自己生成的7z文件,我得到'py7zlib.FormatError:不是7z文件'。有了驱动程序文件,它似乎工作。 –

回答

0

我建议你先打开你的文件,然后用'py7zlib'包。我已经使用此方法成功读取文件。

content=open(filename,"rb") 
archive = py7zlib.Archive7z(content) 
data = archive.getmember(archive.getnames()[0]).read() 
相关问题