PatoolError Python:解包.rar文件时出现问题

PatoolError Python:解包.rar文件时出现问题,python,rar,unrar,Python,Rar,Unrar,我无法在Python中使用patoolib解包.rar文件。 我总是收到错误消息: PatoolError:找不到用于提取格式rar的可执行程序;候选人包括(rar、UNRR、7z) 我正在使用macOS,Anaconda Navigator和Spyder IDE,我已经安装了UNRR软件包。我不明白为什么patool找不到可执行程序,我也无法解决这个问题 有人能告诉我怎么解决吗 编辑: 调用此方法时会出现错误,我定义此方法来解包.zip和.rar文件: def解压文件(路径到文件,输出目录):

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

PatoolError:找不到用于提取格式rar的可执行程序;候选人包括(rar、UNRR、7z)

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

有人能告诉我怎么解决吗

编辑:

调用此方法时会出现错误,我定义此方法来解包.zip和.rar文件:

def解压文件(路径到文件,输出目录):
#将路径\u提取到\u文件in-out\u dir
如果路径\u到\u文件[-3::]=“zip”:
zipfile.zipfile(到文件'r'的路径)作为zip\u参考:
zip_ref.extractall(out_dir)
返回
如果路径\u到\u文件[-3::]=“rar”:
patoolib.extract\u归档文件(路径到文件,outdir=out\u dir)
返回
raise FileNotFoundError(路径到文件)

您使用的是macOS,如果未安装,则可能需要安装,然后运行
brew install 7z
并重试


我猜您正在使用的这个工具并没有进行实际的归档,它只知道如何与各种归档程序进行通信,因此您需要安装一个可以读写
RAR
归档的工具。

您需要向我们展示您尝试过的内容……请提供完整的错误输出,还有一个.opt/anaconda3/lib/python3.7/site packages/patoolib/_init_uuuuuuuuuuuuuuy.py”,第684行,在extract_archive return u extract_archive(archive,verbosity=verbosity,interactive=interactive,outdir=outdir,program=program)文件/opt/anaconda3/lib/python3.7/site packages/patoolib/uu init.py,第470行,在"提取"存档程序=查找"存档"程序中(格式为"提取",程序=程序)谢谢。我已经安装了自制软件和7z。不幸的是,它仍然不起作用。你的7z支持RAR吗?我一点也不知道这个工具,但是这里有一个关于这个的小条款,这个patool似乎没有很好的文档记录。只需在python程序中安装UNRR并编写自己的shell命令,您可能会做得更好,这样您就可以更好地进行控制。有时(经常)使用其他人的工具会意外地取消简化工作。@TylerGannon这个工具似乎没有很好的文档记录。只需在python程序中安装UNRR并编写自己的shell命令,您可能会做得更好,这样您就可以更好地进行控制。它似乎也没有被维护。你有它。