zoukankan      html  css  js  c++  java
  • Python爬虫 tesserocr在Mac下的安装使用

    最近要用tesserocr这个库处理在爬虫中遇到的验证码问题,但是捣鼓了半天都失败。特地记录下来,以防下次出错

    1. 在Pycharm命令台上使用Homebrew安装ImageMagick和tesseract库:

    brew install imagemagick
    brew install tesseract --all-languages
    如果不行的话,换brew install tesseract 安装

    1. 安装完成后可以看看语言全部装上没有,如果有很多语言输出就代表安装成功

    tesseract --list-langs

    1. 测试是否在终端中可以检测图片
      图片地址 https://raw.githubusercontent.com/Python3WebSpider/TestTess/master/image.png
      保存或下载。首先用命令行进行测试,将图片下载下来并保存为image.png,然后用tesseract命令测试:

    tesseract image.png(图片存放的地址) result -l eng && cat result.txt

    运行结果如下:
    Tesseract Open Source OCR Engine v3.05.01 with LeptonicaPython3WebSpider
    这里我们调用了tesseract命令,其中第一个参数为图片名称,第二个参数result为结果保存的目标文件名称,-l指定使用的语言包,在此使用英文(eng)。然后,再用cat命令将结果输出。
    运行结果便是图片的识别结果:Python3WebSpider。可以看到,这时已经成功将图片文字转为电子文本了。
    4. 虽然终端可以识别了,但是在python中调用这个包依然是失败的,所以还需要导入tesseract包

    pip install tesserocr pillow

    但是这步会出错,譬如gcc找不到这样的,所以需要这样写:

    sudo CFLAGS="-mmacosx-version-min=10.14" pip3 install tesserocr
    因为是mac电脑,所以要选择适合自己版本下载,版本在左上角的苹果–>关于本机中可以看到

    把10.14换成自己电脑的版本就可以了。
    安装成功后还需要下载一个Image包对图片进行读取,所以pip install Image
    导入过程中可能会出现导入名字错误情况,选择重启或者先不管。输入我们的测试代码
    方法一:

    import tesserocr
    from PIL import Image
    image = Image.open('/Users/Desktop/image.png')
    print(tesserocr.image_to_text(image))
    1234
    

    方法二:

    import tesserocr
    print(tesserocr.file_to_text(' /Users/Desktop/image.png'))
    12
    

    识别成功,可以使用~

    完~~

  • 相关阅读:
    [HTML5] document.hidden
    在vue页面中设置resize事件
    document之ES6解构
    vue中mixins的使用方法和注意点---mixins第二篇(异步请求的情况)
    vue中mixins的使用方法和注意点---mixins第一篇
    vue中路由重定向redirect
    如何理解dispatch( 'tagsView/delAllViews',null,{root:true} )里面的root:true
    vue计算属性computed中的get和set的使用
    splice(0)的奇妙用法
    4月5日学习日志
  • 原文地址:https://www.cnblogs.com/exlo/p/13853667.html
Copyright © 2011-2022 走看看