1. 安装 pytesseract
pytesseract 是 Python 的一个 OCR 识别库,可以通过安装这个模块,然后调用相应的方法进行验证码识别。我们只是使用这个模块的一些常用的 API,关于这个模块的其他用途,读者可以根据自己的兴趣爱好自行研究。
pytesseract 是第三方模块,所以需要提前安装才能使用,安装命令如下:
- 1
安装过程如下:
2. 第一个例子
我们先使用 pytesseract 进行简单的图片识别。
我们通过调用 image_to_string 方法来进行识别图片中的文字。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
运行结果:
可以看出,pytesseract 能够准确的识别图片的文字。
3. 识别验证码
接下来,我们来尝试使用它来验证验证码。验证码图片如下所示:
代码如下:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
运行结果:
从运行结果,我们可以看出,虽然我们使用了二值化进行了灰度处理,但是程序仍然不能 100% 的识别验证码,所以,后面我们删除了识别错误产生的小数点,才是最后的结果。
4. 小结
使用 pytesseract 只能识别一些简单的验证码,识别率也不高,需要导入训练好的各种语言包才能提高识别率。另外,如果熟悉机器学习的知识化,根据 pytesseract 提供的方法,可以通过深度学习的算法自己训练一个模型,然后进行识别,可以提高识别的准确度。