字母加数字 验证码识别 -----python(tesseract)
·
流程纵观
一、准备工作
所需清单
- 验证码图片一张
- 安装Tesseract
- pytesseract、PILLOW库的安装
- python程序代码
二、验证码图片
- 从网上直接保存到本地。
- 通过图片url用python下载到本地。代码如下:
import requests
def download_img(img_url):
r = requests.get(img_url,stream=True)
print(r.status_code) # 返回状态码
if r.status_code == 200:
open(r'C:\Users\123\Desktop\demo.png', 'wb').write(r.content) # 将内容写入图片
print("done")
del r
if __name__ == '__main__':
# 下载要的图片
img_url = "https://mailsso.mxhichina.com/localproxy/imgcheckcode/get_img?type=150_40&identity=mailsso.mxhichina.com&sessionid=new-3e9947dd-231e-49ec-acf9-5e97be2cb04a"
download_img(img_url)
结果如下,会在桌面生成一张png图片。
三、Tesseract安装配置
1. tesseract下载
- 如下图,安装不要勾选最后两个。若勾选,可能发生报错。
2. Tesseract 系统环境变量配置
-
按键盘Win键,搜索
编辑系统环境变量
,打开如下图: -
点击
环境变量
,如下图: -
选中Path,再点击
编辑
-
点击
新建
,再浏览
tesseract安装路径,如图。最后点击确定
-
回到下图,在下图中,点击
新建
, -
变量名:
TESSDATA_PREFIX
;变量值:C:\Program Files (x86)\Tesseract-OCR\tessdata
,也就是你tesseract安装路径下的tessdata
路径。 -
至此我们已经配置完成了,随后就是需要去添加一些语言库。下载如下:
链接:https://pan.baidu.com/s/19gsqKxIP9AaADWppCsapDA 提取码:6c2y
-
将下载后的文件解压后的放到
C:\Program Files (x86)\Tesseract-OCR\tessdata
路径下,如下
四、python库下载
- 下载下面两个库
pip install pytesseract pip install PILLOW
- 打开下载完成的pytesseract.py 文件。将文件中对应行改为自己安装tesseract的路径
tesseract.exe
,如下tesseract_cmd = 'C:\\Program Files (x86)\\Tesseract-OCR\\tesseract.exe'
- 将文件保存
- 若不修改直接运行下面的程序会报错。
四、python代码
-
python代码
import pytesseract from PIL import Image image = Image.open(r'C:\Users\123\Desktop\demo.png') code = pytesseract.image_to_string(image) print(code)
-
代码结果:
5m82
五、结语
验证码的识别到此结束,基于此可以去模拟登陆一些简单的网站(字母加数字的验证码网站)。
更多推荐
所有评论(0)