我尝试捕获当前屏幕的一部分以检测屏幕上的某些数字,但是当代码运行时出现此错误:
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/bot/detect_num.py", line 12, in <module>
print(pytesseract.image_to_string(Image.open('test.jpg')))
File "C:\Python35\lib\site-packages\pytesseract\pytesseract.py", line 161, in image_to_string
config=config)
File "C:\Python35\lib\site-packages\pytesseract\pytesseract.py", line 94, in run_tesseract
stderr=subprocess.PIPE)
File "C:\Python35\lib\subprocess.py", line 947, in __init__
restore_signals, start_new_session)
File "C:\Python35\lib\subprocess.py", line 1224, in _execute_child
startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified
源代码:
import pyscreenshot as ImageGrab
from PIL import Image
import subprocess
from pytesseract import *
if __name__=="__main__":
im = ImageGrab.grab(bbox=(1349, 34, 1357, 45))
im = im.convert('1')
im.save('test.jpg', 'JPEG')
im.show()
print(pytesseract.image_to_string(Image.open('test.jpg')))
请有人告诉我原因,以及如何解决?
答案 0 :(得分:0)
这里的问题是您没有安装必要的依赖项。当您阅读pyteseeract
's documentation时,您会看到以下文字:
我认为您还没有执行该步骤,因此没有tesseract
命令来实际执行所需的OCR工作。
答案 1 :(得分:0)
使用pytesseract时,首先必须确保在系统中安装了Tesseract-OCR。然后你必须在代码中插入tesseract的路径,如下所示
from PIL import Image
import pytesseract
pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract
OCR/tesseract'
您可以下载Tesseract-OCR表单https://github.com/UB-Mannheim/tesseract/wiki
答案 2 :(得分:0)
https://digi.bib.uni-mannheim.de/tesseract/
从此链接,您可以获得一个.exe
文件,这将使您更容易安装tesseract。然后可以将tesseract的路径添加到环境路径中。最后您可以使用pytesseract