前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python做简单的验证码识别(ocr)

Python做简单的验证码识别(ocr)

作者头像
py3study
发布2020-01-07 22:24:57
1.8K0
发布2020-01-07 22:24:57
举报
文章被收录于专栏:python3python3

1、环境:

系统:XP

Python版本:2.7.5

2、所需文件:

wKioL1Lc21LBEt2GAABXOaBfAgs848.jpg
wKioL1Lc21LBEt2GAABXOaBfAgs848.jpg

(1)、pillow地址:https://pypi.python.org/pypi/Pillow/

(2)、tesseract地址:https://github.com/tesseract-ocr

(3)、pytesser地址:https://code.google.com/p/pytesser/

3、安装

(1)、pillow和tesseract直接双击安装,没什么值得注意的。

(2)、pytesser无需安装,解压到某个文件夹,让后添加环境变量(PYTHONPATH)。比如walker的PYTHONPATH环境变量值是 C:\Python27\Lib\site-packages\pytesser_v0.0.1

注意:将pytesser_v0.0.1目录下pytesser.py第6行的import Image改为from PIL import Image

4、测试

wKiom1Lc4KmikVlFAABl75YI0G4983.jpg
wKiom1Lc4KmikVlFAABl75YI0G4983.jpg

其中图片:

wKioL1Lc4M6iHsRoAAANN43JkXI931.jpg
wKioL1Lc4M6iHsRoAAANN43JkXI931.jpg

3.jpg

wKiom1Lc4PHivm7uAAANEmofN3Q454.jpg
wKiom1Lc4PHivm7uAAANEmofN3Q454.jpg

13.jpg

5、可以看到,识别并不是很精确。可以将得到的字符串转为大写,取出可能的字符,比如上面的验证码可能的字符集为 大写字母和数字,将两个字符串的大写字母和数字取出来是可以得到正确验证码的。

6、如果发现彩×××片不能识别,可以先将其转换为黑白图片再识别。(PIL模式介绍

代码语言:javascript
复制
from PIL import Image

p_w_picpath = Image.open(r'D:\tmp\in.jpg')
p_w_picpath = p_w_picpath.convert("1")    #转换成黑白图片  
p_w_picpath.save(r'D:\tmp\out.jpg')
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
验证码
腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档