9

I'm new to python and would like to install and use the pytesser OCR library. All of the other modules that I've installed, I've used easy_install, which has worked fine. But pytesser is the first that I've had to install by hand using Google Code's .zip file.

Per the instructions in the readme (https://code.google.com/p/pytesser/wiki/README) I extracted the contexts to my C:\Python27\Scripts file. However when I try:

from pytesser import *

within the Python Shell, I get the following error:

Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    from pytesser import *
ImportError: No module named pytesser

Any ideas? Windows 7. Python 2.7. My other scripts using modules such as PIL, Scrapy, Numpy have been working fine.

Thanks, Tom

md1hunox
  • 3,815
  • 10
  • 45
  • 67
Tom M.
  • 139
  • 1
  • 2
  • 10

6 Answers6

10

I'm not sure if this is the ideal solution, but this works for me. Please do correct me if this is incorrect in any way.

  1. Unzip the folder & paste it in your Python2x\Lib folder
  2. Rename it to pytesser (I'm not too sure if this is a necessary step)
  3. Duplicate the tesseract.py file and rename it as __init__.py
  4. Open __init__.py
  5. Change the line tesseract_exe_name = "tesseract" to tesseract_exe_name = 'C:\Python27\Lib\pytesser\tesseract'

Done.

Community
  • 1
  • 1
Yaitzme
  • 241
  • 4
  • 16
6

You should not use C:\Python27\Scripts for 3rd party modules, you should use C:\Python27\Lib\site-packages instead.

wRAR
  • 25,009
  • 4
  • 84
  • 97
  • 1
    @Sekai I'd use `~/.local/lib/python2.7/site-packages` (PEP-370) – wRAR Feb 03 '14 at 13:58
  • Any help here please? : https://stackoverflow.com/questions/45604862/no-module-name-pil-and-no-module-name-pytesser-visual-studio – AskMe Aug 10 '17 at 18:24
2

So I'm using w10 64 bits. And it took me some time to understand how you have to install it to be able to use it.

How to :

https://code.google.com/archive/p/pytesser/downloads

download pytesser_v0.0.1.zip

unzip

move files in the project

rename import Image to "from PIL import Image" in the pytesser.py

=== Enjoy.

Masa
  • 60
  • 7
1

Further to Yaitzme answer - another fix you may need (I'm using Python Tools for Visual Studio on Windows 7 64-bit)...

Once I renamed the pytesser.py file to __init__ I had to put a double backslash in the line e.g.

tesseract_exe_name = ‘C:\Anaconda2\Lib\site-packages\pytesser\\tesseract’

as the single backslash '\tesseract' was interpreting the '\t' as a new tab symbol and breaking the path! Put my install instructions here

Ross
  • 11
  • 2
0

I suspect the problem is with Python not being able to find your C:\Python27\Scripts directory because it's not in your PYTHONPATH.

Python looks in certain directories for files when you run an import command, they're described here http://docs.python.org/2/tutorial/modules.html#the-module-search-path

Your main options are:

1) Tell Python to look in your Scripts folder. This involves adding the folder to your Python path, see here How to add to the pythonpath in windows 7?

2) Put your script in a folder which is already searched by Python. This is wRAR's answer, to use the standard Python 3rd-party modules directory, see here http://docs.python.org/2/install/index.html#how-installation-works

3) Have the pytesser file in Python's current directory. import os followed by os.getcwd() will show you python's current directory, where the code is running (in a sense). os.chdir("my/other/dir") changes the current directory. See How to know/change current directory in Python shell? for more detail.

Community
  • 1
  • 1
Samizdis
  • 1,591
  • 1
  • 17
  • 33
  • The OP tried to install the module into the system, not to import it from the local directory. – wRAR Mar 23 '13 at 12:16
  • According to https://code.google.com/p/pytesser/wiki/README "PyTesser has no installation functionality in this release." Therefore he needs to have the .py file in his Python path. I address this at the end of my answer. Or am I mistaken? – Samizdis Mar 23 '13 at 12:19
  • Yes, he needs to have the .py file in his Python path and that has nothing to do with the working directory. The last part of your answer assumes you can import modules from PYTHONPATH only after you change working directory which is wrong. – wRAR Mar 23 '13 at 12:23
  • I was checking that the problem was indeed PYTHONPATH, being in the same directory works around this problem http://docs.python.org/2/tutorial/modules.html#the-module-search-path – Samizdis Mar 23 '13 at 12:39
  • Yes, now the last part is less wrong, though it is still not necessary for the original question as we know what the OP has done wrong. – wRAR Mar 23 '13 at 12:41
  • How is it at all wrong? I agree the conventional place to put 3rd party libraries is Lib\site-packages, but any module in a directory in the Python path is found. – Samizdis Mar 23 '13 at 12:57
-3

You may got sth wrong. I try pytesser yesterday, maybe you should not put the pytesser file into the script folder. try the working dir, alongside with your code.

>>> import pytesser
>>> print pytesser
<module 'pytesser' from 'E:\Desktop\jiaoben\OCR\pytesser.pyc'
H2Ojile
  • 37
  • 3