最近需要用Python解压7z压缩包,发现了一个特别好用的库:py7zr,支持压缩、解压、加密、解密等等。
作者对issue的反馈非常的及时和专业,甚至因为一个罕见bug还特意去linux官方的mailing-list探讨。
版本要求:>=python3.5
安装
pip install py7zr
解压7z
import py7zr
with py7zr.SevenZipFile('sample.7z', mode='r') as z:
z.extractall()
创建7z
with py7zr.SevenZipFile('target.7z', 'w') as z:
z.writeall('./base_dir')
解压带密码的7z压缩包
import py7zr
with py7zr.SevenZipFile('encrypted.7z', mode='r', password='secret') as z:
z.extractall()
创建带密码的7z压缩包
import py7zr
with py7zr.SevenZipFile('target.7z', 'w', password='secret') as archive:
archive.writeall('/path/to/base_dir', 'base')
其余API详见官网:
https://github.com/miurahr/py7zr