Homebrew安装tesseract后调用报PermissionError权限错误如何解决
问题根源
你配置的路径错误是报错的核心原因。pytesseract.pytesseract.tesseract_cmd 需要指向tesseract的可执行文件路径,你当前填写的是tessdata语言包存储目录的路径,系统无法直接执行一个目录,因此抛出权限错误。
解决方案
步骤1:查询正确的tesseract可执行文件路径
打开终端执行以下命令:which tesseract
Intel芯片Mac的正常输出为 /usr/local/bin/tesseract,M1/M2系列芯片的Mac可能输出为 /opt/homebrew/bin/tesseract。
步骤2:修正代码中的配置
将原错误配置替换为上一步查询到的可执行文件路径,示例如下:
# Intel芯片Mac使用该配置 pytesseract.pytesseract.tesseract_cmd = "/usr/local/bin/tesseract" # M系列芯片Mac使用该配置 pytesseract.pytesseract.tesseract_cmd = "/opt/homebrew/bin/tesseract"
步骤3:自定义语言包的额外配置(可选)
如果你需要指定自定义的tessdata目录,不要修改tesseract_cmd参数,而是在调用识别方法时通过--tessdata-dir参数指定,示例如下:
text = pytesseract.image_to_string(image, lang='chi_sim', config='--tessdata-dir "/usr/local/Cellar/tesseract/4.1.1/share/tessdata/"')
配置验证
运行简单测试代码确认配置生效:
from PIL import Image import pytesseract # 替换为你本地的测试图片路径 img = Image.open("test.png") print(pytesseract.image_to_string(img))
内容的提问来源于stack exchange,提问作者user15256253
相关产品推荐
相关产品推荐

