Ошибка в PYTHON OCR Tesseract

При запуске моего скрипта OCR python из CMD я получаю эту ошибку. Это проблема с изображением или моим кодом??

журнал ошибок

D:\Documents\Everything Programming\_Not Hacking\Bots\Discord Bots\python img recog>imgrecog.py
  File "D:\Documents\Everything Programming\_Not Hacking\Bots\Discord Bots\python img recog\imgrecog.py", line 3
    print(pytesseract.image_to_string(Image.open('C:\Users\[MY NAME]\Desktop\letrs.jpg')))
                                                ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

код

import pytesseract
from PIL import Image

print(pytesseract.image_to_string(Image.open('C:\Users\[MY NAME]\Desktop\letrs.jpg')))

person prime2017    schedule 23.07.2017    source источник
comment
Вам просто нужно избежать косой черты. то есть Image.open('C:\\Users\\[MY NAME]\\Desktop\\letrs.jpg') или используйте необработанную строку Image.open(r'C:\Users\[MY NAME]\Desktop\letrs.jpg'). Символ '\' указывает на начало escape-последовательности, поэтому он пытается интерпретировать \U и \[ как символы и терпит неудачу.   -  person Paul Rooney    schedule 24.07.2017
comment
Большое спасибо!   -  person prime2017    schedule 24.07.2017


Ответы (1)


Используйте косую черту / вместо обратной косой черты \, и все будет в порядке. Ваша основная проблема связана с папкой \Users, которую пытаются интерпретировать из-за файла \U. Так что просто держитесь подальше от обратной косой черты при кодировании, и ваш код должен работать. Другое решение - поставить двойную обратную косую черту, например '\\Users', но зачем беспокоиться.

person roccolocko    schedule 17.08.2017