PatoolErrorPython:解压缩.rar文件时出现问题



我无法在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)

如果您使用的是macOS,则可能应该安装Homebrew(如果未安装(,然后运行brew install 7z并重试。

我猜您使用的这个工具并不能进行实际的归档,它只知道如何与各种归档程序进行对话,因此您需要安装一个可以读取和写入RAR归档的工具。

相关内容

  • 没有找到相关文章