• 自动化脚本无法处理验证码?Python图片识别库Tesseract实战


    本文章出自【码同学软件测试】

    码同学公众号:自动化软件测试,领取资料可加:Matongxue_8

    码同学抖音号:小码哥聊软件测试

     

    前言:

    在Ui测试的时候,有时我们会遇到”元素以图片的形式展示内容”(最经典的案例使验证码).这时传统的文档解析方案就失效了.
    但是,Python中你可以轻易的使用ocr(光学字符识别)技术.对图片元素中的文字进行提取.从而解决技术难题.具体需要以下3步:

    ①安装Tesseract-ocr服务

    ②安装pytesseract-python驱动库

    ③识别图片

    1.关于Tesseract

    ①Tesseract是一款由Google赞助的开源OCR。

    ②Tesseract 已经有 30 年历史,开始它是惠普实验室的一款专利软件,然后在 2005 年开源,自 2006 年后由 Google 赞助进行后续的开发和维护。

    ③在 1995 年 Tesseract 曾是世界前三的 OCR 引擎,而在现在的免费 OCR 引擎中,其识别精度也仍然是出类拔萃的。因为其免费与较好的效果,许多的个人开发者以及一些较小的团队在使用着 Tesseract ,诸如验证码识别、车牌号识别等应用中,不难见到 Tesseract 的身影。

    ④Tesseract(/‘tesərækt/) 这个词的意思的本意是”超立方体”.不过这里用到的,是一款以其命名的开源 OCR(Optical Character Recognition, 光学字符识别) 软件。

    *所谓 OCR 是图像识别领域中的一个子领域,该领域专注于对图片中的文字信息进行识别并转换成能被常规文本编辑器编辑的文本。

    安装:

    1.安装Tesseract.exe
    安装包已经上传到网盘之中
    链接:https://pan.baidu.com/s/18-PSv8Jqhdy6I9Fo9JQfww
    提取码:tn78

    安装过程中唯一要注意的是:
    在勾选组件的时候勾选中文扩展

    之后一路点击next即可

    配置环境变量:
    1.需要在path里配置
    2.需要新建一个系统变量 TESSDATA_PREFIX

    检查tesseract服务是否安装成功
    tesseract -v

    免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章 + 私信「码同学666」获取资料哦

    2.关于pytesseract

    pytesseract库为我们提供了调用Tesseract的API,即只要系统中有Tesseract命令.就可以用python代码来驱动识别

    安装python的api库
    想要使用python去调用pytesseract,就需要安装pytesseract库。安装命令如下:
    pip install pytesseract

    *已知bug:库源代码路径硬编码
    安装完成后,还需要进行一步设置。由于pytesseract库的代码里调用Tesseract服务的路径写的有点问题(windows环境),所以这里手动修改pytesseract.py


    打开原代码,修改这里的调用路径

     

    免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可加:Matongxue_8/关注码同学公众号

    3.在python代码中调试

    ①准备好一张用于识别的图片(如下)

    ②编写代码(如图)

    效果如图:

    可以看到,图片中的文字已经被转化为Python字符串变量了

     

     

    END

    免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频,可加:Matongxue_8/关注码同学公众号

    本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 相关阅读:
    HttpInvoker-----服务端实现
    RMI实现-----客户端的实现
    RMI实现-----服务端的实现
    远程服务(RMI)使用示例
    DispatcherServlet的逻辑处理(下篇)
    DispatcherServlet的逻辑处理(上篇)
    SpringMVC-----DispatcherServlet
    SpringMVC-----ContextLoaderListener
    爬取淘宝笔记本电脑数据(一)
    哔哩哔哩自动播放视频
  • 原文地址:https://www.cnblogs.com/testfan2019/p/15821128.html
Copyright © 2020-2023  润新知