Mac通过Homebrew安装tesseract后pytesseract报路径或权限错误如何解决
问题根因
你遇到的PermissionError本质不是权限配置错误,是你给pytesseract指定的路径有误:你填写的/usr/local/Cellar/tesseract/4.1.1/share/tessdata/是tesseract的语言数据包目录,不是tesseract可执行程序的路径,才会触发执行目录的权限报错。
修复步骤
- 第一步:查询正确的tesseract可执行路径
打开终端执行命令:
常规Homebrew安装的返回结果如下:which tesseract- Intel架构Mac:
/usr/local/bin/tesseract - M系列ARM架构Mac:
/opt/homebrew/bin/tesseract
- Intel架构Mac:
- 第二步:替换代码中的路径配置
将你之前写的路径修改为上一步查询到的可执行文件路径,示例:# Intel Mac示例 pytesseract.pytesseract.tesseract_cmd = "/usr/local/bin/tesseract" - 第三步:(可选)配置语言包路径
如果修改后仍然提示找不到语言包,再额外添加tessdata目录的环境变量配置即可:import os # 路径可以通过brew list tesseract | grep tessdata 命令查询确认 os.environ["TESSDATA_PREFIX"] = "/usr/local/Cellar/tesseract/4.1.1/share/tessdata/"
权限问题修复(仅修改路径后仍有权限报错时执行)
如果确认路径正确仍有PermissionError,可在终端执行命令修复Homebrew目录权限:
- Intel架构Mac:
sudo chown -R $(whoami) /usr/local/Cellar /usr/local/bin - M系列ARM架构Mac:
sudo chown -R $(whoami) /opt/homebrew/Cellar /opt/homebrew/bin
内容的提问来源于stack exchange,提问作者user15256253
相关产品推荐
相关产品推荐

