windows安装tesseract-ocr 和 tesserocr

# 解析图文验证码的库

首先直接使用 PiP 安装:

在cmd中输入:pip3 install tesserocr pillow  【windows上不支持直接这样安装(linux上可以)】

windows可以使用 whl文件 进行安装

下载网址:https://github.com/simonflueckiger/tesserocr-windows_build/releases

文件要放到python的pip命令所在目录

查看Python对应的whl文件版本

cmd中输入:python

>>>import pip

>>>import pip._internal

>>>print(pip._internal.pep425tags.get_supported())

pip3 install tesserocr-2.3.1-cp36-cp36m-win_amd64.whl

安装之后测试一下 能否导入包 我是可以用的 import tesserocr

——————————————————————————————————————————

下载 tesseract-ocr-w64-setup-v4.0.0.20181030.exe  带dev的是开发版本 这个是稳定版本

安装之后我没配环境变量 语言包太大了 我没装(有需要的可以自己装一下)

————————

下面这个网址可以查找图文验证码示例

http://my.cnki.net/elibregister/CheckCode.aspx 

之后在代码中运行:

import tesserocr
from PIL import Image

image = Image.open('code.jpg')
image = image.convert('L')  # 将图片转化为灰度头像
threshold = 127  # 设定阈值  自定义灰度界限,大于这个值为黑色,小于这个值为白色
table = []
for i in range(256):  # RGB元组的256个元素
    if i < threshold:
        table.append(0)
    else:
        table.append(1)

image = image.point(table, '1')
result = tesserocr.image_to_text(image)
print(result)

运行结果报错:

failed to init API, possibly an invalid tessdata ........

应该是路径不对 我上网搜了一下, 以下是一位大神给的解决方法:

Traceback 告诉我们:tessdata 路径无效,无法初始化 API。

错误的原因是:stand-alone packages 虽然包含了 Windows 下所需的所有库,但并是不包含语言数据文件(language data files)。并且数据文件需要被统一放置在 tessdata\ 文件夹中,并置于 C:\Python36 内。

获得数据文件有如下两种方式:

  • 方法一:按照下一节的方法安装 "tesseract-ocr-w64-setup-v4.0.0-beta.1.20180608.exe"(因为要与 tesserocr-2.2.2 匹配)。然后,将 C:\Program Files (x86)\Tesseract-OCR\ 下的 tessdata\ 文件夹复制到 C:\Python36\ 下即可 。
  • 方法二:无需安装 tesseract ,只需克隆 tesseract 仓库的主分支,然后将其中的 tessdata\ 文件夹复制到 C:\Python36\中。接下来,通过 tessdata_fast 仓库下载 eng.traineddata 语言文件,并放置于 C:\Python36\tessdata\ 内即可

——————————

之后在运行就可以用了 2018.12.14 测试有效

windows太恶心了 存钱换苹果吧

猜你喜欢

转载自blog.csdn.net/weixin_42020284/article/details/85001488