2013-11-26 49 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() 
相關問題