我有一个文件,可以在Linux下使用以下命令将其解压缩:
unxz < file.xz > file.txt
我如何使用python做同样的事情?
如果我使用python3和tarfile模块并执行以下操作:
import sys
import tarfile
try:
with tarfile.open('temp.xz', 'r:xz') as t:
t.extract()
except Exception as e:
print("Error:", e.strerror)
我得到一个异常(exception):ReadError('invalid header',)。因此,显然,它希望某些xz文件中不存在的文件或目录信息。
那么,如何在没有标题信息的情况下解压缩文件呢?
最佳答案
tarfile
模块仅适用于...错误... tar文件。您在这里拥有的不是一个。
XZ支持在Python 3.3的LZMA模块中可用。在Python 2.x中,您需要 backports.lzma
。
try:
import lzma
except ImportError:
from backports import lzma
print lzma.open('file.xz').read()
关于python - 如何使用仅包含数据但不包含文件名的python解压缩xz文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42079724/