Emacs python无法找到包/模块

时间:2018-04-14 08:13:35

标签: python emacs anaconda tesseract python-tesseract

问题

emacs python解释器找不到我的tesseract(tesserocr),但是我能够在终端以及Spyder安装中使用tesseract。 Emacs python解释器能够导入pytesseract,但找不到tesserocr。我收到以下错误:

pytesseract.image_to_string(img)

当我跑

/path/to/anaconda3

但是,当我从终端而不是桌面打开EMACS时,我没有收到此错误。看来路径变量在桌面版本和emacs的终端版本中的继承方式不同。 ODD!

说明

我在这里安装了anaconda:(setq python-shell-interpreter "/path/to/anaconda3/bin/python")

我已将此行添加到我的init文件中以运行此特定的python安装

conda install

我使用which tesseract

安装了pytesseract和tesserocr

/path/to/anaconda3/bin/tesseract 给出:

$ echo $PATH

/path/to/anaconda3/bin:/usr/local/sbin:/usr/lo.... 给出:

<script>
if(window.location.href.indexOf("good-stuff") > -1) {
       window.location = 'http://awesomecogoodstuff.com';
    }
</script>

我做了什么

我将sys.path从工作的Spyder IDE复制到emacs python解释器,但仍无效。

我环顾四周找到this,但最重要的答案与我的情况无关,因为我的$ PATH变量包含必要的路径。

有人可以指导我吗?我是个菜鸟。我有emacs 27和ubuntu 16以及conda 4.5.0。

1 个答案:

答案 0 :(得分:0)

这可能是OSError: [Errno 2] No such file or directory using pytesser

的副本 根据链接中的第3点找到了

Answer,引用如下:

import pytesseract

pytesseract.pytesseract.tesseract_cmd = 'path-to-tesseract-including-bin'

就我而言,

import pytesseract
pytesseract.pytesseract.tesseract_cmd = '/home/anaconda3/bin/tesseract'

通过在每个文件中键入以上内容,这只是让image_to_string工作的临时黑客。

为什么具有$PATH的{​​{1}}变量不足以使其充分发挥作用尚不清楚。 This似乎是一个轻微的长期临时解决方案。