所以我试图简单地将rar文件的内容提取到另一个位置 -
import rarfile
epath='C:\\Users\\sidharth.m\\Desktop\\Rar\\xyz.rar'
def unrar(file):
rf = rarfile.RarFile(file)
rf.extractall()
unrar(epath)
但我得到以下错误 -
追踪(最近的呼叫最后):
文件“C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ rarfile.py”,第2816行, custom_popen raise RarCannotExec(“未安装Unrar? (rarfile.UNRAR_TOOL =%r)“%UNRAR_TOOL”rarfile.RarCannotExec:Unrar 未安装? (rarfile.UNRAR_TOOL = '的unrar')
我已经尝试通过anaconda提示符和cmd添加和安装rarfile和unrar软件包,我还将它们各自的路径添加到环境路径变量中,如果这还不够,我甚至将它们导入到项目文件夹中。
知道为什么会出现这个问题?
答案 0 :(得分:2)
import rarfile
rarfile_full_path='PATHTOFILE\\xyz.rar'
path_to_extract='NEW_PATH_OF_YOUR_CHOICE'
def unrar(file,path):
rf = rarfile.RarFile(file)
rf.extractall(path)
unrar(rarfile_full_path,path_to_extract)
您需要在计算机上安装 unrar 或 bsdtar ;只是 rarfile python包 是不够的
来自API Doc:
通过执行外部工具提取压缩文件:来自RARLAB的unrar或来自libarchive的bsdtar。
我已经尝试过添加和安装rarfile和unrar软件包 通过anaconda提示和cmd
首先在 python
之外检查 cmd unrar