一、安装homebrew

1)打开终端直接输入安装命令:

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2)安装完成,验证是否安装成功,输入查询版本命令:

brew --version

注意安装时偶遇到相关问题:

安装完毕后,发现使用brew命令,却总是提示:-bash: brew: command not found

通过排查,发现/usr/local/bin不在PATH中,这里需要进行文件配置操作

1、终端输入:sudo vim .bash_profile(回车后进入修改状态)

2、添加:PATH=“.;$PATH:/usr/local/bin”

3、esc退出命令,    :wq  保存文件并退出vi

4、source .bash_profile使配置修改生效

再次使用brew命令即可。

https://docs.brew.sh---使用帮助,参考官方文档!


二、安装 Imagemagick 和 Tesseract 库

brew install imagemagick

brew install tesseract

安装截图:


三、安装Selenium和ChromeDriver

1、终端输入:

 (win)pip install selenium

(linux) pip3 install selenium

pip3 list selenium

2、下载对应的ChromeDriver

下载地址:http://npm.taobao.org/mirrors/chromedriver/

3、验证是否安装成功

chromedriver
Starting ChromeDriver 2.41.578706 (5f725d1b4f0a4acbf5259df887244095596231db) on port 9515
Only local connections are allowed.

4.代码测试

from selenium import webdriver
browser = webdriver.Chrome()
browser.get('https://www.baidu.com')
运行结果:

5.通过OCR识别验证码图片(实例)

  import pytesseract as pytesseract
from selenium import webdriver
import time
from PIL import Image browser = webdriver.Chrome() browser.get('https://xxxxxxx')
time.sleep(6)
browser.find_element_by_id("userName").send_keys("xxxxxxx")
browser.find_element_by_id("pwd").send_keys("xxxxxx")
time.sleep(6)
codeElement=browser.find_element_by_id("pin")#1、获取验证码输入框
imgElement = browser.find_element_by_class_name("login-pin-img")#2、获取验证码图片
browser.save_screenshot('/Users/pangyongjuan/Documents/test/01.png')#3、 截取全屏
yanzhenga = browser.find_element_by_class_name("login-pin-img")
left = yanzhenga.location['x']#4、 通过location定位x,y
top = yanzhenga.location['y']
elementWidth = yanzhenga.location['x'] + yanzhenga.size['width']#5、 通过x,y的值拼接长和宽
elementHeight = yanzhenga.location['y'] + yanzhenga.size['height']
picture = Image.open('/Users/pangyongjuan/Documents/test/01.png')#6、 打开刚截取的全屏图
picture = picture.crop((left, top, elementWidth, elementHeight))#7、# 定位到需要截取的地方
picture.save('/Users/pangyongjuan/Documents/test/02.png')#8、 截取成功并保存到本地

  

OCR (光学字符识别技术)安装的更多相关文章

  1. [Xcode 实际操作]七、文件与数据-(22)使用OCR光学字符识别技术识别银行卡号码

    目录:[Swift]Xcode实际操作 本文将演示如何使用光学字符识别技术,识别信用卡上的卡号. OCR技术是光学字符识别的缩写(Optical Character Recognition), 是通过 ...

  2. Ocrad.js – JS 实现 OCR 光学字符识别

    Ocrad.js 相当于是 Ocrad 项目的纯 JavaScript 版本,使用 Emscripten 自动转换.这是一个简单的 OCR (光学字符识别)程序,可以扫描图像中的文字回文本. 不像 G ...

  3. 非黑即白--谷歌OCR光学字符识别

    # coding=utf-8 #非黑即白--谷歌OCR光学字符识别 # 颜色的世界里,非黑即白.computer表示深信不疑. # 今天研究一下OCR光学识别庞大领域中的众多分支里的一个开源项目的一个 ...

  4. 【OCR技术系列一】光学字符识别技术介绍

    注:此篇内容主要是综合整理了光学字符识别 和OCR技术系列之一]字符识别技术总览,详情见文末参考文献 什么是 OCR? OCR(Optical Character Recognition,光学字符识别 ...

  5. 6 个优秀的开源 OCR 光学字符识别工具

    转自:http://sigvc.org/bbs/thread-870-1-1.html 纸张在许多地方已日益失宠,无纸化办公谈论40多年,办公环境正限制纸山的生成.而过去几年,无纸化办公的概念发生了显 ...

  6. 开源OCR光学字符识别

    纸张在 许多地方已日益失宠,无纸化办公谈论40多年,办公环境正限制纸山的生成.而过去几年,无纸化办公的概念发生了显着的转变.在计算机软件的帮助 下,包含大量重要管理数据和资讯的文档可以更方便的以电子形 ...

  7. IT行业新名词--透明手机/OCR(光学字符识别)/夹背电池

    透明手机 机身设计的一大关键部分是可替换玻璃的使用,利用导电技术,在看不到线路的环境下,让LED发光. 这样的玻璃内含液晶分子,对于内容的显示则是通过电流对分子的刺激来实现.当手机断电后,分子位置会随 ...

  8. OCR光学字符识别--STN-OCR 测试

    1.同文章中建议的使用ubuntu-python隔离环境,真的很好用 参照:http://blog.topspeedsnail.com/archives/5618启动虚拟环境:source env/b ...

  9. OCR技术(光学字符识别)

    什么是OCR? OCR英文全称是optical character recognition,中文叫光学字符识别.它是利用光学技术和计算机技术把印在或者写在纸上的 文字读取出来,并转换成一种计算机能够接 ...

随机推荐

  1. React传值,验证值的类型和默认值

    const ele = <Ff const={'哈哈'} index={55}></Ff> let box = document.querySelector('#app') / ...

  2. ThreadLocal线程局部变量的使用

    ThreadLocal: 线程局部变量 一).ThreadLocal的引入 用途:是解决多线程间并发访问的方案,不是解决数据共享的方案. 特点:每个线程提供变量的独立副本,所有的线程使用同一个Thre ...

  3. 如何进行Flink项目构建,快速开发Flink应用程序?

    项目模板 Flink应用项目可以使用Maven或SBT来构建项目,Flink针对这些构建工具提供了相应项目模板. Maven模板命令如下,我们只需要根据提示输入应用项目的groupId.artifac ...

  4. GitHub 标星 1.6w+,我发现了一个宝藏项目,作为编程新手有福了!

    大家好,我是 Rocky0429,一个最近老在 GitHub 上闲逛的蒟蒻... 特别惭愧的是,虽然我很早就知道 GitHub,但是学会逛 GitHub 的时间特别晚.当时一方面是因为菜,看着这种全是 ...

  5. MySQL8.0 新特性 Hash Join

    概述&背景 MySQL一直被人诟病没有实现HashJoin,最新发布的8.0.18已经带上了这个功能,令人欣喜.有时候在想,MySQL为什么一直不支持HashJoin呢?我想可能是因为MySQ ...

  6. 有效的减少代码中太多的if、else?-策略模式

    写这篇文章的目的和上一篇单例模式一样,策略模式也是一种常用的设计模式,太多的if-else不仅看着不太美观而且不好维护,对于自己来说也等于复习了一遍策略模式.先说一下策略 模式的定义: 策略模式封装了 ...

  7. 小白学 Python 爬虫(8):网页基础

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  8. “达观杯”文本分类--baseline

    结合tfidf权重,对“达观杯”提供的文本,进行文本分类,作为baseline,后续改进均基于此. 1.比赛地址及数据来源 "达观杯"文本智能挑战赛 2.代码及解析 # -*- c ...

  9. 聚类-K-Means

    1.什么是K-Means? K均值算法聚类 关键词:K个种子,均值聚类的概念:一种无监督的学习,事先不知道类别,自动将相似的对象归到同一个簇中 K-Means算法是一种聚类分析(cluster ana ...

  10. Java Class类常用方法描述

    一 生成Class对象的三种方式 1 Class.forName("全路径名") 2  类名.Class 3 实例对象.getClass() 接着看三种方式生成Class对象的区别 ...