1

我无法在 Python 中使用 patoolib 解压 .rar 文件。我总是收到错误消息:

PatoolError:找不到可执行程序来提取格式rar;候选人是(rar,unrar,7z),

我正在使用 macOS、Anaconda Navigator 和 Spyder IDE,并且我已经安装了 unrar 包。我不明白为什么 patool 找不到可执行程序,我无法解决这个问题。

有人可以告诉我如何解决吗?

编辑:

当我调用此方法时出现错误,我定义为解压缩 .zip 和 .rar 文件:

def unzip_file(path_to_file, out_dir):
    # Extracts path_to_file in out_dir
    if path_to_file[-3:] == 'zip':
        with zipfile.ZipFile(path_to_file, 'r') as zip_ref:
            zip_ref.extractall(out_dir)
            return
    if path_to_file[-3:] == 'rar':
        patoolib.extract_archive(path_to_file, outdir=out_dir)    
        return
    
    raise FileNotFoundError(path_to_file)
4

1 回答 1

0

您在 macOS 上,如果未安装Homebrew ,您可能应该安装它,然后运行并重brew install 7z试。

我猜你正在使用的这个工具并没有进行实际的归档,它只知道如何与那里的各种归档程序对话,所以你需要安装一个可以读写RAR档案的工具。

于 2020-09-28T17:17:20.193 回答