tesserocr是Python的一个OCR库, 其中OCR指的是光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程. tesserocr是tesseract做的一层Python API封装,也就是通过tesserocr访问tesseract,通过在tesseract中处理图像时释放GIL来实现真正的并发执行.
Ubuntu安装tesserocr
在安装tesserocr之前,我们需要先安装tesseract
$apt-get install tesseract-ocr libtesseract-dev libleptonica-dev pkg-config
安装完成之后,可以调用tesseract指令进行版本查看:
$ tesseract --version
接下来通过pip指令安装OCR库: tesserocr,其中pillow是图形处理
$ pip3 install tesserocr pillow
Ubuntu安装tesserocr报错
pip3安装tesserocr时报错提醒:
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-m1aw4x3p/tesserocr/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-ka_fgj11-record/install-record.txt --single-version-externally-managed --compile --user --prefix=" failed with error code 1 in /tmp/pip-build-m1aw4x3p/tesserocr/,
详细如图所示:
网上查询报错原因:
安装工具包时,在抓取网页时要处理 https,而处理https又依赖加解密算法(即cryptography),而 cryptography 又依赖傅立叶变换的算法以及相应的编译环境。Ubuntu 16.04 默认没有安装 libffi-dev 和 libssl-dev,gcc 也不一定安装,而目标安装包又没有将相关软件包记到依赖列表里,因此需要手动安装:
$ sudo apt-get install libssl-dev libffi-dev python-dev build-essential libxml2-dev libxslt1-dev
再次执行pip3 install tesserocr pillow ,安装成功!