如何使用 Python提取.zip
或文件?.rar
问问题
90103 次
6 回答
35
迟到了,但我对任何答案都不满意。
pip install patool
import patoolib
patoolib.extract_archive("foo_bar.rar", outdir="path here")
无需任何其他库即可在 Windows 和 linux 上工作。
于 2014-10-03T11:45:25.903 回答
20
试试这个pyunpack
包:
from pyunpack import Archive
Archive('a.zip').extractall('/path/to')
于 2013-07-12T12:16:13.627 回答
11
于 2013-07-12T12:10:52.710 回答
6
经过一番深入研究,以下是我的发现:
- RAR 不是免费的开放格式,归 RARLabs 所有。您必须先安装他们的 DLL 或 exe 才能使用 RAR。像 7zip 这样的一些程序可能已经包含了这个。
patool
是为其他外部压缩应用程序提供统一命令行作为包装器的应用程序。原生只能处理 TAR、ZIP、BZIP2 和 GZIP,无需外部支持。pyunpack
是 Python 库,只能原生处理 zip,但提供patool
.
考虑到这一点,以下事情对我有用:
- 确保已安装 7zip
pip install patool pyunpack
然后使用它,
import pyunpack
pyunpack.Archive(archive_file).extractall(extract_dir)
于 2020-06-27T23:42:42.727 回答
4
于 2013-07-12T12:07:29.233 回答
0
此方法只需要安装 7zip。
在每个 7zip 系统上都能完美运行。
根本不需要 python 包。
import subprocess
subprocess.run('7z x -oOutdir archive.rar')
子进程模块是 python 自带的。
于 2022-02-14T01:36:42.993 回答