这篇文章主要介绍了Python基于内置库pytesseract实现图片验证码识别功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
环境准备:
1、安装Tesseract模块
git文档地址:https://digi.bib.uni-mannheim.de/tesseract/
下载后就是一个exe安装包,直接右击安装即可,安装完成之后,配置一下环境变量,编辑 系统变量里面 path,添加下面的安装路径:
2、如果您想使用其他语言,请下载相应的数据,(我们只做中文,暂时下载一个中文的文字训练数据就可以) ,然后将.traineddata文件复制到'tessdata'目录中。C:\Program Files (x86)\Tesseract-OCR\tessdata
3、配置环境变量:
编辑 系统变量里面 path,添加下面的安装路径:C:\Program Files (x86)\Tesseract-OCR
cmd命令模式下测试是否安装成功:
tesseract test.jpg text -l chi_sim
4、安装python的第三方库:
pip install pillow #一个python的图像处理库,pytesseract依赖 pip install pytesseract
5、找到pytesseract的安装包,C:\Python34\Lib\site-packages\pytesseract,编辑pytesseract.py文件(此步骤必须做,否则运行代码时会报错):
tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract.exe'
代码实例:
简单验证码代码:
import requests from PIL import Image import pytesseract ''' 简单验证码 ''' # 验证码地址 url = "https://www.renrendai.com/passport/index/captcha?time=1551682134111" response = requests.get(url).content #将图片写入文件 with open('yzm.png','wb') as f: f.write(response) f.close() '''识别验证码''' #第一步:通过内置模块PIL打开文件 pic = Image.open('yzm.png') #第二步:识别图片中的内容 pic_str = pytesseract.image_to_string(pic) print("验证码识别结果为:",pic_str)
百度文库图片文档的识别:
#下载图片 baidu_url = "https://wkretype.bdimg.com/retype/zoom/4127ed79a26925c52cc5bf99?pn=2&o=jpg_6&md5sum=9cdc209bc34a40ed774f7e14c0be59c4&sign=5dbcb28bf1&png=11238-22475&jpg=41808-117940" baidu_pic = requests.get(baidu_url).content #图片写入文件 with open('baidu_pic.jpg','wb') as f: f.write(baidu_pic) f.close() #识别验证码 baidu_img = Image.open('baidu_pic.jpg') baidu_img_str = pytesseract.image_to_string(baidu_img,lang="chi_sim") print('百度文库图片内容为:',baidu_img_str)
复杂的验证码,直接识别不了,可以使用超级鹰的第三方接口,如有需要,自己进行账号的注册,这里直接贴代码喽:
from chaojiying import Chaojiying chaojiying_url= "http://www.chaojiying.com/include/code/code.php?u=1" response = requests.get(chaojiying_url).content with open('rryz.png','wb') as f: f.write(response) f.close() #读取文件内容 with open('rryz.png','rb') as f: pic1 = f.read() #调用第三方打码平台接口识别验证码 yz = Chaojiying(username='*****', password='****', soft_id='****') res = yz.post_pic(pic1,codetype='1902').get('pic_str') #1902 验证码类型 print('识别的结果:',res)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍python opencv pytesseract 验证码识别的实现,包括了python opencv pytesseract 验证码识别的实现的使用技巧和注意事项,需要的朋友参考一下 一、环境配置 需要 pillow 和 pytesseract 这两个库,pip install 安装就好了。 安装好Tesseract-OCR.exe pytesseract 库的配置:搜索找到pyt
本文向大家介绍python 识别登录验证码图片功能的实现代码(完整代码),包括了python 识别登录验证码图片功能的实现代码(完整代码)的使用技巧和注意事项,需要的朋友参考一下 在编写自动化测试用例的时候,每次登录都需要输入验证码,后来想把让python自己识别图片里的验证码,不需要自己手动登陆,所以查了一下识别功能怎么实现,做一下笔记。 首选导入一些用到的库,re、Image、pytesser
本文向大家介绍Python 识别12306图片验证码物品的实现示例,包括了Python 识别12306图片验证码物品的实现示例的使用技巧和注意事项,需要的朋友参考一下 1、PIL介绍以及图片分割 Python 3 安装: pip3 install Pillow 1.1 image 模块 Image模块是在Python PIL图像处理中常见的模块,主要是用于对这个图像的基本处理,它配合open、s
本文向大家介绍c#实现识别图片上的验证码数字,包括了c#实现识别图片上的验证码数字的使用技巧和注意事项,需要的朋友参考一下 C#识别验证码图片通用类 以上2则都是使用C#实现的orc识别的代码,希望对大家学习C#有所帮助。
本文向大家介绍Python实现图片滑动式验证识别方法,包括了Python实现图片滑动式验证识别方法的使用技巧和注意事项,需要的朋友参考一下 1 abstract 验证码作为一种自然人的机器人的判别工具,被广泛的用于各种防止程序做自动化的场景中。传统的字符型验证安全性已经名存实亡的情况下,各种新型的验证码如雨后春笋般涌现。目前最常见的一种形式就是“滑动拼图式” 2 内容概述 关于滑动式验证,最早由国
本文向大家介绍mac使用python识别图形验证码功能,包括了mac使用python识别图形验证码功能的使用技巧和注意事项,需要的朋友参考一下 前言 最近在研究验证码相关的操作,所以准备记录下安装以及使用的过程。虽然之前对验证码的破解有所了解的,但是之前都是简单使用之后就不用了,没有记录一个详细的过程,所以后面再用起来也要重新从网上查找资料比较麻烦,所以这里准备对研究过程的关键点做一个记录。 首先