我按照本指南https://realpython.com/blog/python/setting-up-a-simple-ocr-server/进入了我运行cli.py python flask_server/cli.py
的部分,但我得到了
python cli.py
Traceback (most recent call last):
File "cli.py", line 3, in <module>
import pytesseract
ImportError: No module named pytesseract
我该如何解决这个问题?
我还看到我有多个版本的python。我安装了linux-kali以及最新的更新。
其他:他像python flask_server/cli.py
那样运行命令 - flask_server位于哪里?我只是像python cli.py
那样运行它(我在我创建文件的某个目录中)。
答案 0 :(得分:4)
我有一个类似的错误。因此,我希望能帮助遇到此类问题的人。
就我而言, 我试图在Raspberry Pi 3上使用pytesseract lib运行python代码。
$ pip install pillow
$ pip install pytesseract
(后接https://www.pyimagesearch.com/2017/07/10/using-tesseract-ocr-python/)
然后,我创建了一个example.py进行测试。
try:
import Image
except ImportError:
from PIL import Image
from pytesseract import *
print(pytesseract.image_to_string(Image.open('YOUR_IMAGE_PATH')))
然后,当我运行此代码时,出现了像你这样的错误。 ImportError:没有名为pytesseract的模块
看到@Bertrand Caron的答案后,我找到了解决方案。 我的问题是软件包库路径。
我也有多个版本的python,2.7和3.5,就像一个writer。
当我在Linux上运行命令$python --version
时,结果是Python 2.7.13。
就我而言,当我安装pytesseract软件包时, 它存储在“ / usr / local / lib / python3.5 / dist-packages / pytesseract” 。
然后我运行$python -v example.py
时,发现所引用的软件包路径与 pytesseract上层软件包目录不相同。
cf。
已安装的pytesseract路径:/usr/local/lib/python3.5/dist-packages/pytesseract
运行时实际引用的lib路径:/usr/lib/python2.7/dist-packages /
因此,我将位于“ /usr/local/lib/python3.5/dist-packages/pytesseract”中的pytesseract复制到“ /usr/lib/python2.7/dist-packages/”
然后,解决了!
答案 1 :(得分:3)
Python import
错误通常归结为这三种情况中的一种(无论是您开发的模块还是作为包分发的模块):
您没有安装所需的软件包。谷歌搜索pytesseract
通过在您最喜欢的shell中运行pip
,使用Python包管理器工具pip install pytesseract
分发和安装了OCR。
您确实安装了该软件包,但它不在您的python路径中。
(不太常见)您确实安装了软件包,它位于您的python路径中,但您在Python中已经使用了用户名,而且这两个名称存在冲突。
在你的情况下,我强烈认为这是第一个。可以通过this answer中所述的python -v your_script.py
来调用案例2和3.
答案 2 :(得分:1)
我有同样的错误。我的解决办法是
b
因为我同时安装了python 2和python 3。
答案 3 :(得分:0)
就我而言,我在Jupyter中运行它,所以我使用了此命令,
! pip install --user pytesseract
但是我忘了重启内核。 您需要在安装包后重新启动内核