Python通用验证码识别OCR库怎么使用

发布时间:2022-05-30 11:07:39 作者:iii
来源:亿速云 阅读:242

本篇内容主要讲解“Python通用验证码识别OCR库怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python通用验证码识别OCR库怎么使用”吧!

传统验证码

传统验证就是数字、字母、汉字等,把背景搞得模糊一些,这些验证码在他前面就是个弟弟。

Python通用验证码识别OCR库怎么使用

以第一个为例,要想识别他非常容易了。

import ddddocr
ocr = ddddocr.DdddOcr(old=True)
# 第一个验证截图保存:verification_code_1.png
with open("./verification_code_1.png", 'rb') as f:
    image = f.read()
res = ocr.classification(image)
print(res)

运行结果:

iepv

滑动验证码

当然,传统验证码现在已经比较少网站在使用了,几年前开始流行滑动验证码,当时,也有类似的识别方案,主要通过selenium模拟滑动。

首先,需要准备两张图片

Python通用验证码识别OCR库怎么使用

Python通用验证码识别OCR库怎么使用

import ddddocr
import cv2

slide = ddddocr.DdddOcr(det=False, ocr=False)

# 滑块缝合的图片
with open('./verification_code_2-2.png', 'rb') as f:
    target_bytes = f.read()

# 有缺口的图片
with open('./verification_code_2-1.png', 'rb') as f:
    background_bytes = f.read()

# 滑块缝合的图片
img = cv2.imread("./verification_code_2-2.png")
res = slide.slide_comparison(target_bytes, background_bytes)
print(res)

运行结果

{'target': [17, 78]}

从文档中没找到这个坐标是滑块的初始坐标还是滑到正确位置的坐标。

当然,这种方案想要运行到自动化中还是比较难的,首先我们很难得到滑块缝合的图片,除非你将验证码的所有图片和缺口图片都保存下来,当验证码随机生成一张图片后,先截图和本地保存的图片对比,然后,找到对应的滑块缝合的图片。通过ddddocr找到元素坐标。

总之,太麻烦了,我选择放弃~!

文字点选验证码

这种验证码现在也比较常见,我们需要按照顺序点击图片中的文字。

Python通用验证码识别OCR库怎么使用

import ddddocr
import cv2

det = ddddocr.DdddOcr(det=True)

# 验证码图片
with open("./verification_code_3.png", 'rb') as f:
    image = f.read()

poses = det.detection(image)
print(poses)

# 验证码图片
im = cv2.imread("verification_code_3.png")

for box in poses:
    x1, y1, x2, y2 = box
    im = cv2.rectangle(im, (x1, y1), (x2, y2), color=(0, 0, 255), thickness=2)

# 结果图片
cv2.imwrite("result.jpg", im)

运行结果:

Python通用验证码识别OCR库怎么使用

[[17, 28, 82, 92], [55, 95, 118, 158], [39, 160, 103, 222]]

这里给出的坐标就是识别的三个文字的图片坐标。

这种方案同样会面临两个问题;

到此,相信大家对“Python通用验证码识别OCR库怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

推荐阅读:
  1. 使用 tesseract-ocr生成训练库全部指令
  2. python3怎么安装OCR识别库tesserocr

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python ocr

上一篇:常用Git指令有哪些

下一篇:ASP.NET如何使用SignalR2实现服务器广播

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》