python - 如何使用 pyunpack 解压 .7z 文件?

标签 python python-2.7

我试图解压 7z 文件,但出现错误。

这是代码:

from pyunpack import Archive
Archive('E:/Desktop/vnpt2/2_1_0_2841.7z').extractall('E:/Desktop/vnpt2/new')

这是错误:

Traceback (most recent call last):
  File "E:\Desktop\vnpt2\zip.py", line 2, in <module>
    Archive('E:/Desktop/vnpt2/2_1_0_2841.7z').extractall('E:/Desktop/vnpt2/new')
  File "C:\Python27\lib\site-packages\pyunpack\__init__.py", line 90, in extractall
    self.extractall_patool(directory, patool_path)
  File "C:\Python27\lib\site-packages\pyunpack\__init__.py", line 62, in extractall_patool
    raise PatoolError('patool can not unpack\n' + str(p.stderr))
pyunpack.PatoolError: patool can not unpack
patool error: error extracting E:\Desktop\vnpt2\2_1_0_2841.7z: could not find an executable program to extract format 7z; candidates are (7z,7za,7zr),

我该如何解决?

最佳答案

您可以改为使用 py7zr 的组合包装和 shutil打包解压 7z 文件。
步骤

  • pip 安装 py7zr
  • 运行以下代码:
  • from py7zr import unpack_7zarchive
    import shutil
    
    shutil.register_unpack_format('7zip', ['.7z'], unpack_7zarchive)
    shutil.unpack_archive('filename.7z', '/unzip_path')
    

    关于python - 如何使用 pyunpack 解压 .7z 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50745486/

    相关文章:

    python - 使用 iron python 脚本在文本文件中打印注册商标符号?

    python - 统一python 2/3版本支持类型

    python - glGenTextures 中的 pyopengl 错误

    python - Pandas 中的时间序列数据集到每小时特征数据集

    python - 在 nginx 上使用 Fabric 的 Python Flask Web 应用程序中出现上游超时错误

    string - 替换字符串中所有重叠的模式

    python-2.7 - SPSSIO错误: format for 'variable' misspecified (A'XXX)

    python - 使用 Python 循环使用随机范围的列表

    python - 将数据从 DB2 DB 传输到 greenplum DB

    python - 来自 Base64 的 PyQt4 setWindowIcon