OCR (光学字符识别技术)安装
一、安装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 (光学字符识别技术)安装的更多相关文章
- [Xcode 实际操作]七、文件与数据-(22)使用OCR光学字符识别技术识别银行卡号码
目录:[Swift]Xcode实际操作 本文将演示如何使用光学字符识别技术,识别信用卡上的卡号. OCR技术是光学字符识别的缩写(Optical Character Recognition), 是通过 ...
- Ocrad.js – JS 实现 OCR 光学字符识别
Ocrad.js 相当于是 Ocrad 项目的纯 JavaScript 版本,使用 Emscripten 自动转换.这是一个简单的 OCR (光学字符识别)程序,可以扫描图像中的文字回文本. 不像 G ...
- 非黑即白--谷歌OCR光学字符识别
# coding=utf-8 #非黑即白--谷歌OCR光学字符识别 # 颜色的世界里,非黑即白.computer表示深信不疑. # 今天研究一下OCR光学识别庞大领域中的众多分支里的一个开源项目的一个 ...
- 【OCR技术系列一】光学字符识别技术介绍
注:此篇内容主要是综合整理了光学字符识别 和OCR技术系列之一]字符识别技术总览,详情见文末参考文献 什么是 OCR? OCR(Optical Character Recognition,光学字符识别 ...
- 6 个优秀的开源 OCR 光学字符识别工具
转自:http://sigvc.org/bbs/thread-870-1-1.html 纸张在许多地方已日益失宠,无纸化办公谈论40多年,办公环境正限制纸山的生成.而过去几年,无纸化办公的概念发生了显 ...
- 开源OCR光学字符识别
纸张在 许多地方已日益失宠,无纸化办公谈论40多年,办公环境正限制纸山的生成.而过去几年,无纸化办公的概念发生了显着的转变.在计算机软件的帮助 下,包含大量重要管理数据和资讯的文档可以更方便的以电子形 ...
- IT行业新名词--透明手机/OCR(光学字符识别)/夹背电池
透明手机 机身设计的一大关键部分是可替换玻璃的使用,利用导电技术,在看不到线路的环境下,让LED发光. 这样的玻璃内含液晶分子,对于内容的显示则是通过电流对分子的刺激来实现.当手机断电后,分子位置会随 ...
- OCR光学字符识别--STN-OCR 测试
1.同文章中建议的使用ubuntu-python隔离环境,真的很好用 参照:http://blog.topspeedsnail.com/archives/5618启动虚拟环境:source env/b ...
- OCR技术(光学字符识别)
什么是OCR? OCR英文全称是optical character recognition,中文叫光学字符识别.它是利用光学技术和计算机技术把印在或者写在纸上的 文字读取出来,并转换成一种计算机能够接 ...
随机推荐
- BIM到底是啥?
近年来随着BIM的大火以及一些政策的支持,BIM逐渐走入建筑行业的视野,但其实大部分人都不知道或者说不了解BIM到底是啥.去百度上进行搜索,你会知道BIM就是Building Infor ...
- nexus auto start
cd /etc/init.d ln -s /opt/nexus/nexus-2.3.1-01/bin/jsw/linux-x86-64/nexus nexus chkconfig --add nexu ...
- Alibaba Nacos 学习(五):K8S Nacos搭建,使用nfs
Alibaba Nacos 学习(一):Nacos介绍与安装 Alibaba Nacos 学习(二):Spring Cloud Nacos Config Alibaba Nacos 学习(三):Spr ...
- 一文带你深入了解 redis 复制技术及主从架构
主从架构可以说是互联网必备的架构了,第一是为了保证服务的高可用,第二是为了实现读写分离,你可能熟悉我们常用的 MySQL 数据库的主从架构,对于我们 redis 来说也不意外,redis 数据库也有各 ...
- Java数组使用以及foreach循环
Java数组使用以及foreach循环 二话不说,先甩一个简单的程序: final int NUM= 10; int[] arrays = new int[NUM]; System.out.print ...
- Spring Cloud Alibaba基础教程:Nacos服务发现与配置管理
随着微服务概念的流行,越来越多的公司采用`Spring Cloud`全家桶构建微服务系统,实现业务的快速迭代.`Spring Cloud`提供了快速构建分布式微服务常用组件,包括`Spring Clo ...
- day 15 内置函数二 递归 lamda sorted filter map 二分法求值
回顾 for i in dict #对字典进行遍历,拿到的是字典的key 今日主要内容 1. lambda 匿名函数 语法: lambda 参数:返回值 不能完成复杂的操作.只能写一行 注意: 1 ...
- 01_Numpy基本使用
1.Numpy读取txt/csv文件 读取数据 import numpy as np # numpy打开本地txt文件 world_alcohol = np.genfromtxt("D:\\ ...
- CTF中遇到的php
1.if(eregi("hackerDJ",$_GET[id])) { //eregi字符串对比 echo("<p>not allowed!</p& ...
- 在Kubernetes上运行有状态应用:从StatefulSet到Operator
一开始Kubernetes只是被设计用来运行无状态应用,直到在1.5版本中才添加了StatefulSet控制器用于支持有状态应用,但它直到1.9版本才正式可用.本文将介绍有状态和无状态应用,一个通过K ...