OCR 识别图片验证码

本贴最后更新于 394 天前,其中的信息可能已经时移世异

在UI自动化测试中可能会经常遇到需要输入如图所示验证码的情况。市面上有许多收费OCR接口,不过我最近发现了一个开源项目:ddddocr (名字也非常好记:带带弟弟ocr)

github项目地址:sml2h3/ddddocr: 带带弟弟 通用验证码识别OCR pypi版 (github.com)

安装前需要注意:

python <= 3.9

支持Windows/Linux/Macos..

暂时不支持Macbook M1(X),M1(X)用户需要自己编译onnxruntime才可以使用。

安装命令:pip install ddddocr

推荐使用国内镜像源,使用下面的命令将镜像源配置为全局默认(以清华镜像源为例)

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

配置完后再进行安装 pip install ddddocr

安装成功后,尝试识别一张图片

digpic.jpg

import ddddocr
ocr = ddddocr.DdddOcr()

with open("digpic.jpg","rb") as f:
    imge_bytes = f.read()
ocr_result = ocr.classification(imge_bytes)

print(ocr_result)

输出:

image.png

如果运行后出现报错,如DdddOcr' object has no attribute '_DdddOcr__ort_session

可以尝试在实例化对象的时候不要传任何参数。不要传det=False, ocr=False

除了验证码OCR,该项目还支持滑块认证、拼图认证等,感兴趣的话自己去探索吧!

1 回帖
请输入回帖内容 ...
  • raylee

    ps:目前太复杂或者太抽象的码识别还是不够准确的