Я использую питон 3.5.2
и pytesseract, есть ошибка TypeError: a bytes-like object is required, not 'str'
, когда я запускаю мой код, (подробности ниже):TypeError: а байты-подобный объект необходим, а не «ул» в питон 3.5.2 и pytesseract
код: File "D:/test.py"
# -*- coding: utf-8 -*-
try:
import Image
except ImportError:
from PIL import Image
import pytesseract
print(pytesseract.image_to_string(Image.open('d:/testimages/name.gif'), lang='chi_sim'))
print(pytesseract.image_to_string(Image.open('d:/testimages/mobile.gif')))
ошибка:
Traceback (most recent call last):
File "D:/test.py", line 11, in <module>
print(pytesseract.image_to_string(Image.open('d:/testimages/name.gif'), lang='chi_sim'))
File "C:\Users\dell\AppData\Local\Programs\Python\Python35\lib\site-packages\pytesseract\pytesseract.py", line 164, in image_to_string
errors = get_errors(error_string)
File "C:\Users\dell\AppData\Local\Programs\Python\Python35\lib\site-packages\pytesseract\pytesseract.py", line 112, in get_errors
error_lines = tuple(line for line in lines if line.find('Error') >= 0)
File "C:\Users\dell\AppData\Local\Programs\Python\Python35\lib\site-packages\pytesseract\pytesseract.py", line 112, in <genexpr>
error_lines = tuple(line for line in lines if line.find('Error') >= 0)
TypeError: a bytes-like object is required, not 'str'
что я должен делать?
Edit:
У меня есть скачать обучающие данные в C:\Program Files (x86)\Tesseract-OCR\tessdata
, как это:
и я вставить строку error_string = error_string.decode("utf-8")
в get_errors()
, ошибка выглядит так:
Traceback (most recent call last):
File "D:/test.py", line 11, in <module>
print(pytesseract.image_to_string(Image.open('d:/testimages/name.gif'), lang='chi_sim'))
File "C:\Users\dell\AppData\Local\Programs\Python\Python35\lib\site-packages\pytesseract\pytesseract.py", line 165, in image_to_string
raise TesseractError(status, errors)
pytesseract.pytesseract.TesseractError: (1, 'Error opening data file \\Program Files (x86)\\Tesseract-OCR\\tessdata/chi_sim.traineddata')
У этого есть некоторые другие проблемы, см. Мое редактирование. – zwl1619
@ zwl1619: Я не *, который знаком с тем, как работает pytessaract. Исправление ошибки кодирования показывает, что данные обучения не установлены так, как ожидается. Ошибка выходила раньше, но из-за проблемы с кодировкой вы ее никогда не получали. Возможно, это какая-то проблема разрешения? –