Python Error pytesseract: PermissionError: [WinError 5] Access is denied

解决OCR权限错误
本文介绍了一个使用Python的OCR(光学字符识别)过程中遇到的权限错误问题,并给出了具体的解决方案。通过调整Tesseract-OCR的路径设置,成功解决了[WinError5]Accessisdenied的报错。

from PIL import Image
import pytesseract
pytesseract.pytesseract.tesseract_cmd = "C:\\Program Files (x86)\\Tesseract-OCR\\tessdata"
image = Image.open(r"E:\Python\ocr\venv\111.png")
code = pytesseract.image_to_string(image)
print(code)

E:\Python\ocr\venv\Scripts\python.exe E:/Python/ocr/ocr.py
Traceback (most recent call last):
  File "E:/Python/ocr/ocr.py", line 7, in <module>
    code = pytesseract.image_to_string(image)
  File "E:\Python\ocr\venv\lib\site-packages\pytesseract\pytesseract.py", line 136, in image_to_string
    nice=nice)
  File "E:\Python\ocr\venv\lib\site-packages\pytesseract\pytesseract.py", line 82, in run_tesseract
    proc = subprocess.Popen(command, stderr=subprocess.PIPE)
  File "C:\Program Files\Python36\Lib\subprocess.py", line 707, in __init__
    restore_signals, start_new_session)
  File "C:\Program Files\Python36\Lib\subprocess.py", line 992, in _execute_child
    startupinfo)
PermissionError: [WinError 5] Access is denied

一段简单的读取图片code,一开始包FileNotFoundError,于是添加tesseract_cmd路径,出现 [WinError 5] Access is denied

将tesseract_cmd更改为以下,问题解决

pytesseract.pytesseract.tesseract_cmd = "C:\\Program Files (x86)\\Tesseract-OCR\\tesseract.exe"

在 Windows 环境下,安装或访问 Python 的 `pyzmq` 包时出现 `PermissionError: [WinError 5] Access is denied` 错误通常与文件或目录的权限设置有关。此类问题通常表现为对 `pyzmq-23.2.0.dist-info` 文件夹或其内部文件(如 `AUTHORS.md`)的访问被拒绝。以下是详细的解决方法: ### 1. 修改文件夹权限 确保 Python 或相关包管理工具(如 pip、conda)拥有对目标目录的完全控制权限。可以通过以下步骤操作: 1. 找到 Python 或 Anaconda 的安装目录,例如 `D:\Anaconda3\Lib\site-packages`。 2. 右键点击 `pyzmq-23.2.0.dist-info` 文件夹,选择“属性”。 3. 在“安全”选项卡中,点击“组或用户名”中的 **Users**。 4. 点击“编辑”按钮,将“完全控制”权限勾选,然后点击“应用”和“确定”保存更改。 此方法可以解决因权限不足导致的访问拒绝问题[^4]。 ### 2. 以管理员身份运行命令行 在安装或更新包时,确保使用管理员权限运行命令行工具(CMD 或 PowerShell)。右键点击 CMD 或 PowerShell 图标,选择“以管理员身份运行”,然后执行以下命令: ```bash pip install --upgrade pyzmq ``` 或者,如果使用的是 Anaconda 环境: ```bash conda install pyzmq ``` 以管理员权限运行命令可以避免因权限不足导致的安装失败问题。 ### 3. 清理缓存并重新安装 有时,pip 缓存可能损坏,导致安装失败。可以尝试清除 pip 缓存后重新安装: ```bash pip cache purge pip install --force-reinstall pyzmq ``` 如果仍然无法安装,可以手动删除 `pyzmq-23.2.0.dist-info` 文件夹,然后重新安装: 1. 手动进入 `Lib\site-packages` 目录。 2. 删除 `pyzmq-23.2.0.dist-info` 文件夹。 3. 运行 `pip install pyzmq` 重新安装。 ### 4. 使用错误处理函数强制删除只读文件夹 如果 `pyzmq-23.2.0.dist-info` 文件夹具有只读属性,可以使用 Python 脚本强制删除: ```python import os import stat import shutil def remove_readonly(func, path, _): "清除只读属性并重新尝试删除文件" os.chmod(path, stat.S_IWRITE) func(path) # 替换为你的 pyzmq 文件夹路径 directory = r'F:\Anaconda3\Lib\site-packages\pyzmq-23.2.0.dist-info' shutil.rmtree(directory, onerror=remove_readonly) ``` 通过这种方式,可以绕过只读属性限制并成功删除文件夹[^2]。 ### 5. 检查杀毒软件或系统工具干扰 某些杀毒软件或系统优化工具(如 Windows Defender)可能会阻止对特定文件的访问。可以尝试暂时禁用这些工具,然后重新运行安装命令。 ---
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值