OCR图形识别技术在爬虫中的应用
文章目录
- OCR图形识别技术:
- Tesseract:
- 安装:
- Windows系统:
- Linux系统:
- Mac系统:
- 设置环境变量:
- 在命令行中使用tesseract识别图像:
- 在代码中使用tesseract识别图像:
- 用`pytesseract`处理某学校的登陆图形验证码:
OCR图形识别技术:
阻碍我们爬虫的。有时候正是在登录或者请求一些数据时候的图形验证码。因此这里考虑一种能将图片翻译成文字的技术。将图片翻译成文字一般被成为光学文字识别(Optical Character Recognition),简写为OCR
。实现OCR
的库不是很多,特别是开源的。因为这块存在一定的技术壁垒(需要大量的数据、算法、机器学习、深度学习知识等),并且如果做好了具有很高的商业价值。因此开源的比较少。这里介绍一个比较优秀的图像识别开源库:Tesseract。
Tesseract:
Tesseract是一个OCR库,目前由谷歌赞助。Tesseract是目前公认最优秀、最准确的开源OCR库。Tesseract具有一定的识别度,也具有很高的灵活性,他可以通过训练识别任何字体。
安装:
Windows系统:
在以下链接下载可执行文件,然后一顿点击下一步安装即可(放在不需要权限的纯英文路径下):
https://github.com/tesseract-ocr/
Linux系统:
可以在以下链接下载源码自行编译。
https://github.com/tesseract-ocr/tesseract/wiki/Compiling
或者在ubuntu
下通过以下命令进行安装:
sudo apt install tesseract-ocr
Mac系统:
用Homebrew
即可方便安装:
brew install tesseract
设置环境变量:
安装完成后,如果想要在命令行中使用Tesseract
,那么应该设置环境变量。Mac
和Linux
在安装的时候就默认已经设置好了。在Windows
下把tesseract.exe
所在的路径添加到PATH
环境变量中。
还有一个环境变量需要设置的是,要把训练的数据文件路径也放到环境变量中。
在环境变量中,添加一个TESSDATA_PREFIX=C:\path_to_tesseractdata\teseractdata
。
在命令行中使用tesseract识别图像:
如果想要在cmd
下能够使用tesseract
命令,那么需要把tesseract.exe
所在的目录放到PATH
环境变量中。然后使用命令:tesseract 图片路径 文件路径
。
示例:
tesseract a.png a
那么就会识别出a.png
中的图片,并且把文字写入到a.txt
中。如果不想写入文件直接想显示在终端,那么不要加文件名就可以了。
在代码中使用tesseract识别图像:
在Python
代码中操作tesseract
。需要安装一个库,叫做pytesseract
。通过pip
的方式即可安装:
pip install pytesseract
并且,需要读取图片,需要借助一个第三方库叫做PIL
。通过pip list
看下是否安装。如果没有安装,通过pip
的方式安装:
pip install PIL
使用pytesseract
将图片上的文字转换为文本文字的示例代码如下:
# 导入pytesseract库
import pytesseract
# 导入Image库
from PIL import Image# 指定tesseract.exe所在的路径
pytesseract.pytesseract.tesseract_cmd = r'D:\ProgramApp\TesseractOCR\tesseract.exe'# 打开图片
image = Image.open("a.png")
# 调用image_to_string将图片转换为文字
text = pytesseract.image_to_string(image)
print(text)
用pytesseract
处理某学校的登陆图形验证码:
import pytesseract
from urllib import request
from PIL import Image
import timepytesseract.pytesseract.tesseract_cmd = r"D:\ProgramApp\TesseractOCR\tesseract.exe"while True:captchaUrl = "https://xxxx.com/vcode/create?from=register&refresh=1513081451891"request.urlretrieve(captchaUrl,'captcha.png')image = Image.open('captcha.png')text = pytesseract.image_to_string(image,lang='eng')print(text)time.sleep(2)
OCR图形识别技术在爬虫中的应用相关推荐
- OCR识别技术在行业中的应用
OCR识别一般是指OCR图像文字识别技术,经过多年的发展,OCR识别技术累积了大量经验,逐渐推出了针对不同行业的OCR识别接口,识别的精度更加准确.速度更快.支持在多种平台运用,满足了不同行业信息录入 ...
- 爬虫中的那些反爬虫措施以及解决方法
在爬虫中遇到反爬虫真的是家常便饭了,这篇博客我想结合我自己的经验将遇到过的那些问题给出来,并给出一些解决方案. 1.UserAgent UserAgent的设置能使服务器能够识别客户使用的操作系 ...
- 身份证OCR识别在远程开户中的应用
远程开户背景: 传统的金融机构开户需要客户携带身份证件到营业厅进行办理,但是地理位置的限制造成了部分客户群体的不便,随着移动互联网的快速发展,金融行业追求创新,为客户提供更加便利的开户方式.利用金融远 ...
- OCR识别技术之—移动端证件识别
移动端驾驶证识别应用背景 随着智能手机及平板电脑以及互联网的飞速发展,第三方支付.理财.P2P网贷.征信.汽车后市场等APP应用成爆发式的增长,在众多APP中都涉及到对驾驶证信息的录入,如车险理赔.汽 ...
- 通过OCR识别技术 识别视频和图片的文字信息怎样得到结果
随着互联网世界的不断充盈,各种各样的视频.文字.图片爆炸式增长,那么如何才能保障信息的健康性.文明性?如何监控这些新增内容和现存内容呢?舆情监控的重要性可谓不言而喻.中安未来视频文字识别SDK具有强大 ...
- ID 发展新方向:OCR证件技术
OCR(Optical character recognition光学字符识别)技术自70年代后期出现至今已有近40年历史,现已在计算机自动录入.票据识别.信函分拣.资料分析等多方面获得了广泛应用.可 ...
- 隐式 Style–CSS 在反爬虫中的应用
文章作者:「夜幕团队 NightTeam」 - 戴煌金 润色.校对:「夜幕团队 NightTeam」 - Loco 什么是隐式 Style–CSS 先来唠唠什么是 隐式 Style–CSS: CSS中 ...
- 【人工智能】中科院2019全球人工智能发展白皮书!八大关键技术中国崛起中,国产AI芯片耀眼...
来源:产业智能官 人工智能是一个很宽泛的概念,概括而言是对人的意识和思维过程的模拟,利用机器学习和数据分析方法赋予机器类人的能力.人工智能将提升社会劳动生产率,特别是在有效降低劳动成本.优化产品和服务 ...
- 爬虫中的User-Agent和IP代理
爬虫中的User-Agent和IP代理 一.User-Agent 按照百度百科的解释:User-Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本 ...
- 浅谈网络爬虫中广度优先算法和深度优先算法
前言 做爬虫的,最怕业务简单粗暴的来一句"爬一下XXXX网".比如,"爬一下央广网"(示例链接:http://www.cnr.cn),看着密密麻麻的各种子分类, ...
最新文章
- 密歇根大学联合谷歌大脑提出,通过「推断语义布局」实现「文本到图像合成」
- php python-浅谈php调用python文件
- [原] 探索 EventEmitter 在 Node.js 中的实现
- python绘图设置标题出现乱码_解决python2 绘图title,xlabel,ylabel出现中文乱码的问题...
- HTML与XHTML区别
- 使用idea创建项目并通过git上传到码云
- 小D课堂 - 零基础入门SpringBoot2.X到实战_第10节 SpringBoot整合定时任务和异步任务处理_42、SpringBoot常用定时任务配置实战...
- PhotoShop - 建立剪切蒙版
- CST微波工作室学习笔记1 概述
- [VP] 拉普拉斯算子 Laplacian Filter
- 别了甲骨文,别了拉里·埃里森!
- thinkphp3.1.3框架手册
- SylixOS学习二—— SylixOS启程之旅_SylixOS 系统概览
- Dubbo是什么?能做什么?架构图?
- Magnetic Actuation Systems for Miniature Robots: A Review
- Android图片转换
- 为什么你的同龄人在抛弃你?还要等着被谁抛弃?
- sirius java_sirius
- 最优控制问题matlab编程实例,第十二章用matlab解最优控制问题及应用实例.ppt
- 【转】《致新员工书》