傻瓜式 Python OCR 识别库 ddddocr

admin 2025年6月10日18:08:23评论12 views字数 1411阅读4分42秒阅读模式
来自公众号:Python技术
在使用爬虫登录网站的时候,经常输入用户名和密码后会遇到验证码,简单一点的有字母验证码,复杂一点的有滑块验证码,点选文章和点选图片验证码。这些都是爬虫中的老大难问题,今天介绍一款通用验证码识别 SDK 对他们彻底说拜拜,它的名字是 ddddocr 带带弟弟 OCR 通用验证码识别 SDK 免费开源版。
傻瓜式 Python OCR 识别库  ddddocr

下载

https://github.com/sml2h3/ddddocr

安装

 

将自动安装符合自己电脑环境的最新 ddddocr。Python 环境需要小于等于 3.9。

pip install ddddocr

使用

带带弟弟 OCR 可以识别三种验证码,小编就用这三种来实验一下。

滑块验证码

滑块验证码这里用的是豆瓣的滑块验证。下滑块是单独的透明背景图 hycdn.png。

傻瓜式 Python OCR 识别库  ddddocr
hycdn.png

背景图是带小滑块坑位的 background.jpg。

傻瓜式 Python OCR 识别库  ddddocr
background
import ddddocr

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

with open('hycdn.png', 'rb') as f:
        target_bytes = f.read()
    
with open('background.jpg', 'rb') as f:
    background_bytes = f.read()

res = det.slide_match(target_bytes, background_bytes, simple_target=True)

print(res)

识别结果

{'target_y': 0, 'target': [486, 126, 622, 262]}

target 属性的前两个值正好和豆瓣验证滑块 url 中提交的 ans 差不多。

傻瓜式 Python OCR 识别库  ddddocr

点选类验证码

点选类验证码用的是网易登录

傻瓜式 Python OCR 识别库  ddddocr
eb.jpg
det = ddddocr.DdddOcr(det=True)

    with open("eb.jpg", 'rb') as f:
        image = f.read()

    poses = det.detection(image)

    im = cv2.imread("eb.jpg")

    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 识别库  ddddocr

字母数字验证码

字母数字验证码的图片来自于 google 搜索

傻瓜式 Python OCR 识别库  ddddocr
ocr = ddddocr.DdddOcr(old=True)

with open("z1.jpg", 'rb') as f:
    image = f.read()

res = ocr.classification(image)
print(res)

识别结果

3n3d
8342

总结

ddddocr 让验证码变得如此简单与易用,,让不会用 opencv, pytorch, tensorflow 的小伙伴也能快速的破解网站的登录验证码。小伙伴们如果有其他好的 ocr 识别也可以在留言中分享出来。

--- EOF ---
推荐↓↓↓

 

原文始发于微信公众号(Python编程):傻瓜式 Python OCR 识别库 -- ddddocr

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年6月10日18:08:23
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   傻瓜式 Python OCR 识别库 ddddocrhttps://cn-sec.com/archives/846676.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息