Подтвердить что ты не робот

pytesseract не может найти указанный файл

Мой код прямолинейный и выглядит следующим образом:

import pytesseract
from PIL import Image

img = Image.open('C:/temp/foo.jpg')
img.load()
i = pytesseract.image_to_string(img)

и ответ об ошибке, который я получаю:

Traceback (most recent call last):
  File "img.py", line 6, in <module>
    i = pytesseract.image_to_string(img)
  File "build\bdist.win32\egg\pytesseract\pytesseract.py", line 161, in image_to
_string
  File "build\bdist.win32\egg\pytesseract\pytesseract.py", line 94, in run_tesse
ract
  File "C:\Users\%USER%\AppData\Local\Continuum\Anaconda\lib\subprocess.py",
line 710, in __init__
    errread, errwrite)
  File "C:\Users\%USER%\AppData\Local\Continuum\Anaconda\lib\subprocess.py",
line 958, in _execute_child
    startupinfo)
WindowsError: [Error 2] The system cannot find the file specified

Любое руководство было бы фантастическим.

Добавление tesseract в переменную пути помогло: C:\Program Files (x86)\Tesseract-OCR

Но теперь код падает при попытке запустить кусок pytesseract.

4b9b3361

Ответ 1

Просто нажмите ту же ошибку и решила ответить на этот вопрос - это может помочь кому-то сэкономить время...

Во-первых, убедитесь, что вы установили/скопировали исполняемые файлы Tesseract-OCR.

Windows не может найти исполняемый tesseract в каталогах, указанных в PATH среды PATH. Поэтому либо убедитесь, что каталог, содержащий tesseract находится в вашей PATH либо перезаписал переменную tesseract_cmd в вашем скрипте Python, как показано ниже (вместо этого вместо PATH):

import pytesseract

pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract'

Кроме того, убедитесь, что TESSDATA_PREFIX среды TESSDATA_PREFIX Windows установлена в каталог, содержащий каталог tessdata. Например:

TESSDATA_PREFIX=C:\Program Files (x86)\Tesseract-OCR

если местоположение tessdata: C:\Program Files (x86)\Tesseract-OCR\tessdata