18

私のコードは簡単で、次のとおりです。

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 ピースを実行しようとすると、コードがクラッシュするようになりました。

4

1 に答える 1

56

同じエラーが発生し、この質問に答えることにしました-誰かが時間を節約するのに役立つかもしれません...

まず、Tesseract-OCR 実行可能ファイルがインストール/コピーされていることを確認します。

Windows は、環境変数tesseractで指定されたディレクトリで実行可能ファイルを見つけることができません。そのため、変数PATHを含むディレクトリが変数に含まれていることを確認するか、次のように Python スクリプトで変数を上書きします (代わりに PATH を入力してください)。tesseractPATHtesseract_cmd

import pytesseract

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

TESSDATA_PREFIX それに加えて、 Windows環境変数がディレクトリを含むディレクトリに設定されていることを確認してtessdataください。例えば:

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

tessdata場所が次の場合:C:\Program Files (x86)\Tesseract-OCR\tessdata

于 2016-03-06T18:02:26.287 に答える