Rarfile python模块在尝试从* .rar文件中提取内容时不断抛出错误

时间:2018-04-17 04:22:44

标签: python

所以我试图简单地将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软件包,我还将它们各自的路径添加到环境路径变量中,如果这还不够,我甚至将它们导入到项目文件夹中。

知道为什么会出现这个问题?

1 个答案:

答案 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