验证码识别最佳方案,你不来试试?

本文涉及的产品
文档理解,结构化解析 100页
通用文字识别,通用文字识别 200次/月
小语种识别,小语种识别 200次/月
简介: 验证码识别最佳方案,你不来试试?

背景

UI自动化测试-验证码识别

验证码分析:图片上有折线,验证码有数字,有英文字母大小写,分类的时候需要更多的样本,验证码的字母是彩色的,图片上有雪花等噪点,因此识别改验证码难度较大。


方案对比

Tesseract OCR

  • 缺点:这个安装比较麻烦,对新手不太友好,各个系统,不同的python环境下,坑比较多;需要额外设置环境变量等。

「我敢保证你一次肯定安装不成功」哈哈哈哈。

  • 优点:是免费,较为易用;但其识别精度一般。


百度OCR

  • 缺点:需要进行一系列的配置,新手一次搞不定;免费的api有调用次数限制而且需要联网【有限制】;离线sdk需要购买。
  • 优点:识别准确率高


带带弟弟OCR

  • 缺点:暂时没有缺点,和以上两个ocr相比;免费的忽略缺点【哈哈哈哈哈】
  • 优点:「开箱即用,安装简单,大力推荐,识别率高」


实际操作

安装

安装过程相当简单,不会出现任何报错,版本不兼容的情况【python>=3.6】

pip install ddddocr


展示代码

# -*- coding: utf-8 -*-
"""
@Project :demo 
@File    :test_ocr.py
@Author  :lijiawei
@Date    :2021/8/10 8:45 上午 
"""
import ddddocr
def magic_ocr(img_path):
    """
    ocr 识别
    :param img_path: 验证码图片路径
    :return: 
    """
    ocr = ddddocr.DdddOcr()
    with open(img_path, 'rb') as f:
        img_bytes = f.read()
    return ocr.classification(img_bytes)


实战

  • 我们以【北京通】登录页面的验证为例
  • 识别结果
1774
Process finished with exit code 0


验证码样本

用我们的验证码样本实战,平均识别速度在100ms以内,识别率100%

思考&反问

「大家觉得方便高效有没有质和量的区别?」

  • 用【Tesseract OCR】进行验证码识别方不方便?也挺方便!
  • 用【百度OCR】进行验证码识别方不方便?也挺方便!
  • 用【带带弟弟OCR】进行验证码识别方不方便?好像也挺方便!

就经常问人,如果这三种方式能给够同样给你带来方便,也就是说这三 种方式你都欣赏过都使用过,你都觉得还不错对吧!

「那你觉得哪种方便更让你方便?」


总而言之,如果你需要进行验证码识别,以上3种识别方案都尝试过, 那么,带带弟弟OCR(ddddocr)这个库一定是你的首选方案~

下集预告

  • 将验证码识别服务化

部署属于自己的 OCR API

相关文章
|
4月前
|
移动开发 JavaScript 前端开发
【绝技揭秘】从零到英雄:解锁UniApp H5项目中的二维码生成与扫描秘籍,让你的应用瞬间变身扫码达人!
【8月更文挑战第20天】二维码在移动应用中无处不在。本文详述了在UniApp H5项目中实现二维码生成与扫描的方法。通过对比插件`uni-app-qrcode`和JavaScript库`qrcode-generator`生成二维码的方式,以及使用插件`@juggle/resize-observer`和HTML5的MediaDevices API进行扫描的技术方案,帮助开发者挑选最佳实践。无论是插件的便捷性还是原生JavaScript的灵活性,都能满足不同项目需求。
145 0
|
7月前
|
缓存 前端开发 Java
去掉 if...else 的七种绝佳之法...
去掉 if...else 的七种绝佳之法...
如何开发自主体育直播足球竞猜系统?说难不难,做好这三步就行了
随着网络技术的发展,体育直播已经成为人们观看体育比赛的主要方式之一。对于想要开发自主体育直播系统的企业或个人来说,以下三步是必须要做的。
|
存储 算法 定位技术
千耘导航QYX—明明有颜值,硬要靠实力
随着太阳活动峰年的到来,电离层的活跃程度在逐步加剧,是否担心因受电离层活跃的干扰,出现农机导航定位精度不准甚至不能用的情况? 千耘QYX电离层抑制能力,可有效降低电离层活跃对农机导航的影响,保障用户使用农机导航过程中精度的稳定性。
千耘导航QYX—明明有颜值,硬要靠实力
|
搜索推荐 小程序 程序员
看过很多教程,却依然写不好一个程序,怎么破?
最近在和学员的沟通中,发现不少初学者面临这样一个问题:了解了一些基本的语法,看得懂书上的示例,但是面临一个新的编程问题时,依然感到无从下手。
|
编解码 程序员 数据安全/隐私保护
没错,我是高端吃瓜玩家(搞懂摩斯密码)
在电气时代刚流行的时代,并没有电话手机,人们探索的第一步是如何用电去传讯消息,在这期间摩尔斯发明了电报并且获得了专利,并且他的团队(有说是他的助手艾尔菲德·维尔发明的摩尔斯电码)配套发明了一套传输的规则被称为摩尔斯电码。
743 0
没错,我是高端吃瓜玩家(搞懂摩斯密码)
|
前端开发 小程序 Java
一款神仙接私活儿的软件,吊到不行!
一款神仙接私活儿的软件,吊到不行!
162 0
一款神仙接私活儿的软件,吊到不行!
|
弹性计算 Cloud Native 算法
“我想要用我余生,换夜空繁星闪耀”
本文是7月28日《一个95后阿里郎的自学修养》文字稿,我们花了一个小时时间,从一阿里郎学生时代的成长经验,聊到了求职时期的tips,最后聊到了工作后的收获,希望与象牙塔里的你一起分享。
2169 0
“我想要用我余生,换夜空繁星闪耀”
|
分布式计算 大数据 MaxCompute
三七女生节,看程序媛们选好口红色号,踩上高跟鞋,特别美丽,特别凶狠,特别温柔~
口红,尿不湿,代码;撒娇,卖萌,撕叉;烈焰红唇倾斜45度角写代码;我爱你,你用知性保持着最致命的吸引力!
2118 0
|
编解码 程序员 UED
小视频开发第一步,为了实现这些功能小视频源码开发者们很费劲
台上一分钟,台下十年功,在抖音形成巨大风潮后,这个人手必刷的小视频软件似乎已经被人贴上了“简单好用”的标签,但其实,短视频真的有那么简单吗?不是哦,小视频软件操作简单的页面背后,都有着程序员大哥们流下的辛勤汗水,我们为什么喜欢这个软件?程序员大哥们又为了用户体验而做出了什么操作呢? 今天我们就来看...