OSError:[WinError 740]请求的操作需要提升

问题描述 投票:1回答:2

我有一个简单的代码,其中包含一个名为“ try.png”的图像,我想使用pytesseract将其从图像转换为文本,但是我的代码存在一些问题。

import cv2
import pytesseract
pytesseract.pytesseract.tesseract_cmd=r'tesseract-ocr-setup-4.00.00dev.exe'
img = cv2.imread('try.png')
img= cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
print(pytesseract.image_to_string(img))

但是它给我一个错误。

Traceback (most recent call last):
  File "C:/Users/user 1/PycharmProjects/JARVIS/try.py", line 6, in <module>
    print(pytesseract.image_to_string(img))
  File "C:\Users\user 1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pytesseract\pytesseract.py", line 356, in image_to_string
    return {
  File "C:\Users\user 1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pytesseract\pytesseract.py", line 359, in <lambda>
    Output.STRING: lambda: run_and_get_output(*args),
  File "C:\Users\user 1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pytesseract\pytesseract.py", line 270, in run_and_get_output
    run_tesseract(**kwargs)
  File "C:\Users\user 1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pytesseract\pytesseract.py", line 241, in run_tesseract
    raise e
  File "C:\Users\user 1\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pytesseract\pytesseract.py", line 238, in run_tesseract
    proc = subprocess.Popen(cmd_args, **subprocess_args())
  File "C:\Users\user 1\AppData\Local\Programs\Python\Python38-32\lib\subprocess.py", line 854, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\Users\user 1\AppData\Local\Programs\Python\Python38-32\lib\subprocess.py", line 1307, in _execute_child
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
OSError: [WinError 740] The requested operation requires elevation

Process finished with exit code 1

关于如何克服此错误的任何想法

python python-3.x error-handling tesseract python-tesseract
2个回答
0
投票

tesseract-ocr-setup-4.00.00dev.exe听起来像是安装程序exe,而不是tesseract本身。检查您是否已经真正安装了tesseract,如果没有,请启动exe进行安装。

对于Windows,请从此处下载最新版本:https://github.com/UB-Mannheim/tesseract/wiki

如果仍然得到OSError: [WinError 740] The requested operation requires elevation,请尝试将tesseract可执行文件更改为以管理员身份运行:Right Click tesseract.exe -> Properties -> Compability -> Check Run this program as an administrator -> OK


0
投票

我想您尚未在系统上安装tesseract。运行tesseract-ocr-setup-4.00.00dev.exe进行安装,并记下安装位置($tesseractLocation)如果在安装时遇到相同的错误,请尝试以管理员权限运行它。并替换

pytesseract.pytesseract.tesseract_cmd=r'tesseract-ocr-setup-4.00.00dev.exe'

pytesseract.pytesseract.tesseract_cmd=r'$tesseractLocation'

这将解决问题。在脚本中,您必须提及安装目录而不是安装文件。

© www.soinside.com 2019 - 2024. All rights reserved.