• python识别验证码tesseract介绍与使用


    一、什么是tesseract?

      光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程。对于图形验证码来说,它们都是一些不规则的字符,这些字符确实是由字符稍加扭曲变换得到的内容。只能识别一些简单的验证码。

    二、安装与使用

    1、安装(Mac下安装)

    brew install tesseract
    //与python对接需要安装的包
    pip3 install Pillow
    pip3 install pytesseract

     2、下载语言库

    (1)下载地址:https://github.com/tesseract-ocr/tessdata

    根据自己的需求选择所要的语言库,在这里我们选择的是简体中文所以选择的库是:chi_sim.traineddata、eng.traineddata(已有,无需下载) 

    (2)将文件拷贝到到:/usr/local/Cellar/tesseract/3.04.01_2/share/tessdata目录下。

    (3)终端输入命令:tesseract --help

    3、使用

    (1)命令行直接识别

    a、在终端打开图片,运行下图中命令

    b、在文件11.txt中查看识别结果

    注意:通过测试发现,这种方式一般只能识别纯数字或者数字比较多的验证码,如果字母多就会无法识别。

    (2)在代码中识别

    #!/usr/local/bin/python3.7
    
    from PIL import Image
    import pytesseract
    
    # 打开图片
    img = Image.open('Reptile/code.png')
    img = img.convert('RGB')
    # 识别图片
    result = pytesseract.image_to_string(img)
    print('识别结果:',result)

     注意:代码的识别度也不是很高,可以在代码中对图片进行灰度/二值化等处理,提高识别度。

  • 相关阅读:
    javascript 心得
    pdfbox加载pdf时遇到wrappedioexception报错处理方式
    缩写
    Java学习——连接数据库
    oracle 关于null值排序
    Java学习笔记(二)
    kvm安装windows系统
    导入excel文件信息
    shell脚本根据端口号自启动jar
    spirngboot使用netty实现UDP协议接收数据
  • 原文地址:https://www.cnblogs.com/lxmtx/p/13082969.html
Copyright © 2020-2023  润新知