Rarfile解压不了的问题
最近用python调用rarfile进行解压rar压缩包时,报了如下错误:
rarfile.RarCannotExec: Unrar not installed? (rarfile.UNRAR_TOOL='unrar')
结合本人C#调用rar.exe的经验:rar压缩包的算法并不对外公开,所以其它软件想压缩或解压rar文件,必须通过cmd调用rar.exe。
所以,怀疑rarfile其实也是调用的rar.exe或unrar.exe
百度后发现如下两篇文章,侧面证实了上述猜测。
参考:
https://blog.csdn.net/big_talent/article/details/52367184
https://blog.csdn.net/luoye7422/article/details/41873499
解决方案:
据winrar的目录中的unrar.exe,拷贝到我的python脚本目录下,再执行就ok了;
或者环境变量path中加入unrar.exe所在目录;
PyCharm的话,可以将unrar.exe复制到项目的venv/Scripts下。
最终采用的方法为第三种,将unrar.exe复制到运行环境目录下