【发布时间】:2021-01-15 04:27:54
【问题描述】:
我在用 Python 解压 .rar 文件时遇到问题。我正在使用 macOS、Anaconda Navigator 和 Spyder IDE。
我已经安装了unrar、pyunpack、py7zr、rarfile、patool 包。但是,当我运行此代码时:
import zipfile
import numpy as np
import pandas as pd
from rarfile import RarFile
import patoolib
from pyunpack import Archive
# Archive('aaa.rar').extractall(".")
patoolib.extract_archive('aaa.rar')
我收到错误消息:
PatoolError: could not find an executable program to extract format rar; candidates are (rar,unrar,7z),
和
File "/opt/anaconda3/lib/python3.7/site-packages/patoolib/__init__.py", line 684, in extract_archive
return _extract_archive(archive, verbosity=verbosity, interactive=interactive, outdir=outdir, program=program)
File "/opt/anaconda3/lib/python3.7/site-packages/patoolib/__init__.py", line 470, in _extract_archive
program = find_archive_program(format, 'extract', program=program)
File "/opt/anaconda3/lib/python3.7/site-packages/patoolib/__init__.py", line 336, in find_archive_program
raise util.PatoolError("could not find an executable program to %s format %s; candidates are (%s)," % (command, format, ",".join(programs)))
有人可以帮帮我吗?
【问题讨论】:
-
当你打开一个shell并运行
unrar时会发生什么?如果您在 Anaconda 环境中尝试相同的操作?问题是patoolib找不到unrar可执行文件。它要么未安装,不在您的 PATH 上,要么在 Anaconda 环境中找不到。 -
如果我从终端输入“unrar”,它会显示我可以使用的命令的信息(提取文件、列出存档内容……)。如果我在 Anaconda 环境中键入“unrar”,它会显示“NameError: name 'unrar' is not defined”
标签: python macos archive rar unrar