I am trying to unrar a file using pyunpack but I always get an error. If I use a zip file everything works just fine but with rar files not. This is my code:
from pyunpack import Archive
Archive('C:/Users/Username/Desktop/teste/Desktop2.rar').extractall('C:/Users/Username/Desktop/teste')
This is the error I get:
Traceback (most recent call last):
File "c:\Python34\lib\site-packages\easyprocess\__init__.py", line 255, in start
cwd=self.cwd,
File "c:\Python34\lib\subprocess.py", line 859, in __init__
restore_signals, start_new_session)
File "c:\Python34\lib\subprocess.py", line 1112, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system couldn't find the specified file
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Username\Documents\NetBeansProjects\Teste\src\main.py", line 17, in <module>
Archive('C:/Users/Username/Desktop/teste/Desktop2.rar').extractall('C:/Users/Username/Desktop/teste')
File "c:\Python34\lib\site-packages\pyunpack\__init__.py", line 81, in extractall
self.extractall_patool(directory)
File "c:\Python34\lib\site-packages\pyunpack\__init__.py", line 47, in extractall_patool
]).call()
File "c:\Python34\lib\site-packages\easyprocess\__init__.py", line 223, in call
self.start().wait(timeout=timeout)
File "c:\Python34\lib\site-packages\easyprocess\__init__.py", line 260, in start
raise EasyProcessError(self, 'start error')
easyprocess.EasyProcessError: start error <EasyProcess cmd_param=['patool', 'extract', Path('C:\\Users\\Username\\Desktop\\teste\\Desktop2.rar'), Path('--outdir=C:\\Users\\Username\\Desktop\\teste')] cmd=['patool', 'extract', Path('C:\\Users\\Username\\Desktop\\teste\\Desktop2.rar'), Path('--outdir=C:\\Users\\Username\\Desktop\\teste')] oserror=[WinError 2] The system couldn't find the specified file returncode=None stdout="None" stderr="None" timeout=False>
Do you have any idea on what could be the problem?
patoolpackage. Without it, only zip files can be unpacked.patoolto unrar your files. See this answer.raise util.PatoolError("could not find an executable program to %s format %s; candidates are (%s)," % (command, format, ",".join(programs))) patoolib.util.PatoolError: could not find an executable program to extract format rar; candidates are (rar,unrar,7z)Did you manage to get it to work with that answer?