PyTesseract не может загрузить языки - PullRequest
0 голосов
/ 26 марта 2020

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

import pytesseract
from PIL import Image

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

img = Image.open("sample.png")
text = pytesseract.image_to_string(img, lang="eng")
print(text)

Я получаю ошибку:

Traceback (most recent call last):
  File "C:/PY/tesseract test.py", line 11, in <module>
    text = pytesseract.image_to_string(img, lang="eng")
  File "C:\PY\lib\site-packages\pytesseract\pytesseract.py", line 346, in image_to_string
    return {
  File "C:\PY\lib\site-packages\pytesseract\pytesseract.py", line 349, in <lambda>
    Output.STRING: lambda: run_and_get_output(*args),
  File "C:\PY\lib\site-packages\pytesseract\pytesseract.py", line 260, in run_and_get_output
    run_tesseract(**kwargs)
  File "C:\PY\lib\site-packages\pytesseract\pytesseract.py", line 236, in run_tesseract
    raise TesseractError(proc.returncode, get_errors(error_string))
pytesseract.pytesseract.TesseractError: (1, 'Error opening data file \\Program Files (x86)\\Tesseract-OCR\\eng.traineddata Please make sure the TESSDATA_PREFIX environment variable is set to your "tessdata" directory. Failed loading language \'eng\' Tesseract couldn\'t load any languages! Could not initialize tesseract.')

Я пытался найти другие решения, но ничего не смог найти

Ответы [ 2 ]

0 голосов
/ 26 марта 2020

Я исправил эту проблему, удалив tesseract и установив старую версию (3.0.2). До сих пор я не заметил потери функциональности. Я лично просто счастлив, что это работает.

0 голосов
/ 26 марта 2020

Я не знаком с tesseract в Python, но вам может понадобиться загрузить двоичный файл eng.traineddata, чтобы он работал. Добавьте TESSDATA_PREFIX к своим переменным окружения и укажите его в папке, где находится бинарный файл.

Вам может понадобиться этот ответ, похожий на ваш случай: pytesseract Failed loading language \ 'eng \ '

...