最近需要用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