文档章节

使用python及工具包进行简单的验证码识别

 小i的i
发布于 2017/07/26 18:37
字数 571
阅读 23
收藏 0

相信大家利用 Python 写的爬虫应该遇到过要输入验证码的尴尬局面,又或者写了个自动填充表单的小程序,结果就卡在了验证码上。

在ctf中有⼀一些题⽬目,本身有弱验证码识别绕过,那么我们怎么解决呢? 这⾥里里⽤用题⽬目
http://lab1.xseclab.com/vcode7_f7947d56f22133dbc85dda4f28530268/ 做实例例讲解

首先[Python] 纯文本查看 复制代码

?

 

发现脚本运⾏行行报错,然后开始装tesseract-OCR 准备⼯工作: 编译环境: gcc gcc-c++ make(这个环境⼀一般机器器都具备,可以忽略略)

[Python] 纯文本查看 复制代码

?

 

依赖的包: autoconf automake libtool libjpeg-devel libpng-devel libtiff-devel zlib-devel leptonica(1.67以上) autoconf automake libtool libjpeg-devel libpng-devel libtiff-devel zlib-devel 可以通过yum安装:

[Python] 纯文本查看 复制代码

?

 

leptonica 需要源码编译安装参考资料料:

http://paramountideas.com/tesseract-ocr-30-and-leptonica-installation-centos-55-and-opensuse-113 http://www.leptonica.org/source/README.html 下载leptonica 包: http://www.leptonica.org/source/leptonica-1.68.tar.gz 解压后切换到leptonica-1.68 根⽬目录

[AppleScript] 纯文本查看 复制代码

?

 

tesseract安装:

依赖安装完毕后开始安装tesseract

下载tesseract-3.01 安装包: http://tesseract-ocr.googlecode.com/files/ tesseract-3.01.tar.gz

解压后切换到tesseract-3.01 根⽬目录

(如果在make时遇到类似strngs.h:1: error: stray ‘\357’ in program 的错误,请将

tesseract-3.01/ccutil/strngs.h

⽂文件转为ANSI 编码保存,再重新编译)

[Python] 纯文本查看 复制代码

?

 

tesseract英⽂文语⾔言包安装:

载tesseract-3.01 英⽂文语⾔言包: http://tesseract-ocr.googlecode.com/files/tesseract-ocr-3.01.eng.tar.gz 解压后将tesseract-ocr/tessdata 下的所有⽂文件全部拷⻉贝到/usr/local/share/tessdata 下 安装完毕. 测试⼀一下: 切换到解压后的tesseract-3.01 根⽬目录(这个⽬目录下有⼀一个⾃自带的phototest.tif 可以做测试⽤用) 命令⾏行行:

[Python] 纯文本查看 复制代码

?

 

输出:

[AppleScript] 纯文本查看 复制代码

?

 

这时应该在当前⽬目录⽣生成⼀一个phototest.txt ⽂文本⽂文件,内容就是phototest.tif 显示的⽂文字. 装完了了之后开始跑脚本

运⾏,等待得到结果

© 著作权归作者所有

粉丝 0
博文 3
码字总数 7836
作品 0
私信 提问
Python破解验证码技术,识别率高达百分之八十!

本文将具体介绍如何利用Python的图像处理模块pillow和OCR模块pytesseract来识别上述验证码(数字加字母)。 我们识别上述验证码的算法过程如下: 将原图像进行灰度处理,转化为灰度图像; 获...

妄心xyx
03/09
0
0
使用 python 识别简单验证码

概述 简介 坑! 安装 Tesseract-OCR 使用 pytesseract 识别验证码 高级玩法 - 除线 简介 首先呢,简单的验证码是这样的: 不是这样的: 这里使用了 pytesseract 来进行验证码识别,它是基于 ...

zone_
2018/08/17
0
0
Python图像处理之图片验证码识别

  在上一篇博客Python图像处理之图片文字识别(OCR)中我们介绍了在Python中如何利用Tesseract软件来识别图片中的英文与中文,本文将具体介绍如何在Python中利用Tesseract软件来识别验证码...

jclian91
2018/06/10
0
0
总结八个好用的Python爬虫技巧

用python也差不多一年多了,python应用最多的场景还是web快速开发、爬虫、自动化运维:写过简单网站、写过自动发帖脚本、写过收发邮件脚本、写过简单验证码识别脚本。 爬虫在开发过程中也有很...

糖宝lsh
2018/11/26
96
0
使用python PIL库实现简单验证码的去噪

首先要感谢一下字符型图片验证码识别完整过程及Python实现的博主,我的大部分知识点都是从他那里学来的。 想要识别验证码,收集足够多的样本后,首先要做的就是对验证码原始图片进行处理,对...

u012067766
2018/04/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

x002-语言元素

变量命令规则 硬性规则: 变量名由字母(广义的Unicode字符,不包括特殊字符)、数字和下划线构成,数字不能开头。 大小写敏感(大写的a和小写的A是两个不同的变量)。 不要跟关键字(有特殊...

伟大源于勇敢的开始
今天
4
0
nginx反向代理配置

nginx配置文件位置/usr/local/nginx/conf/nginx.conf 配置文件修改: # cd /usr/local/nginx/conf # vim nginx.conf server {listen 80;server_name localhost;#charset k......

行者终成事
今天
5
0
OSChina 周日乱弹 —— 这是假的,和我之前的不一样

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 小小编辑推荐:《男孩》-梁博 / 陶孟童 / 肖和东 / 高誉容 《男孩》-梁博 / 陶孟童 / 肖和东 / 高誉容 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
8
0
Rust学习笔记一 数据类型

写在前面 我也不是什么特别厉害的大牛,学历也很低,只是对一些新语言比较感兴趣,接触过的语言不算多也不算少,大部分也都浅尝辄止,所以理解上可能会有一些偏差。 自学了Java、Kotlin、Python、...

MusiCodeXY
今天
5
0
Java 脚本引擎入门

Java Script Engine Java 脚本引擎可以将脚本嵌入Java代码中,可以自定义和扩展Java应用程序,自JDK1.6被引入,基于Rhino引擎,JDK1.8后使用Nashorn引擎,支持ECMAScript 5,但后期还可能会换...

阿提说说
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部