nodejs破解验证码
来源:互联网 发布:2018网络剧上映时间表 编辑:程序博客网 时间:2024/06/15 05:24
nodejs破解验证码
node项目,实现了从pc网站抓取登录接口,获得验证码,并自动破解验证码,最终实现用手机自动登录pc网站。简单点就是
用手机重新定义UI,调用爬来的pc接口。接口验证码都好获取,验证如何自动破解呢?
实现
设计到验证码破解,网上node能搜出来的结果很少,都是java之类的,主流的组件叫 tesseract
但是nodejs项目里如何引用呢?我们走起
- install(linux centos 6.5)
我们的运行环境是linux centos 6.5,首先谷歌了一个tesseract的安装教程,教程有坑,下面分享实际安装步骤
1、install gcc
1
yum install gcc gcc-c++ make
2、install dependent packages 依赖包
12
yum install autoconf automake libtoolyum install libjpeg-devel libpng-devel libtiff-devel zlib-devel
3、install leptonica
123456
wget http://www.leptonica.org/source/leptonica-1.68.tar.gztar -xvzf leptonica-1.68cd leptonica-1.68./configuremakemake install
4、install tesseract 需要翻墙
12345678
wget http://tesseract-ocr.googlecode.com/files/tesseract-3.01.tar.gztar -xvzf tesseract-3.01.tar.gzcd tesseract-3.01./autogen.sh./configuremakemake installldconfig
有需要的可以去我网盘下载([链接:]http://pan.baidu.com/s/1o8gCD1g 密码:ngno)
5、intall tesseract language package 语言包,需要翻墙
123456
wget http://tesseract-ocr.googlecode.com/files/tesseract-ocr-3.01.eng.tar.gztar -xvzf tesseract-ocr-3.01.eng.tar.gzcd tesseract-ocrsudo cp -r tessdata/* /usr/local/share/tessdata/ln -fs /usr/local/bin/tesseract /usr/bin/tesseractexport TESSDATA_PREFIX=/usr/local/share/
有需要的可以去我网盘下载([链接:]http://pan.baidu.com/s/1o8gCD1g 密码:ngno)
6、测试
1
tesseract test.jpg out
如果输出:Tesseract Open Source OCR Engine v3.01 with Leptonica就说明安装没有问题了。
1
vim out.text
6152 完全正确
- node调用
经过查找我们找到了tesseract的node包,node-tesseract
1、install
1
npm install node-tesseract --save
2、引用
1
const tesseract = require('node-tesseract');
3、调用
12345678910
/// gif is converted by a gif which getted from a pc websitetesseract.procsss(gif,function (err, text) {console.log('the qrcode is ',text)if (err) {cb('error');} else {cb(text.replace(/\n/g, '')); // 去除空白}});
说明下,tesseract破解的时候建议用gif,或者png,不要用gif,因为gif会提示你报错(no pix returned)。
所以最好破解前将图片格式转换下,比如使用imagemagick
4、测试
和单独执行tesseract命令结果一样
最后
由于这个pc站的验证码纹理少干净,所以破解率很高,如果是有纹理干扰的就会下降,当然也不是没有办法提升,
可以通过机器训练来提高,具体教程可参考这位同学的博客
- nodejs破解验证码
- [nodejs] ccap验证码
- NodeJs 生成验证码
- 第一次破解验证码
- 验证码破解
- 验证码破解方法
- 破解图片验证码
- 验证码的破解
- 验证码破解技术
- loadrunuer破解验证码
- loadrunuer破解验证码
- 如何破解验证码
- 验证码破解技术
- 验证码破解
- 验证码识别破解
- Python 破解验证码
- 验证码破解
- Python 破解验证码
- Oracle ORA-02025 SQL语句的所有表均必须在远程数据库中
- Hdu 1573 X问题 拓展欧几里得 解题报告
- Wannafly挑战赛1 C-MMSET2 LCA
- vim 下的python自动补全
- copy-list-with-random-pointer Java code
- nodejs破解验证码
- eclipse,多个java程序同时运行,用不同的console显示运行信息的方法。
- Javamail 工具类
- tableView使用MJRefresh视图下滑64,下拉UI显示
- libQtCore.so.4相关错误
- C++中static关键字
- java基础(六)——数据类型的存储方式
- Java设计模式 之 桥接模式
- Linux下mount/umount函数应用