iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >如何利用html5 canvas破解简单验证码
  • 210
分享到

如何利用html5 canvas破解简单验证码

2024-04-02 19:04:59 210人浏览 薄情痞子
摘要

本篇内容主要讲解“如何利用HTML5 canvas破解简单验证码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何利用html5 canvas破解简单验证码”吧

本篇内容主要讲解“如何利用HTML5 canvas破解简单验证码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何利用html5 canvas破解简单验证码”吧!

代码如下:


var ctx = canvas.getContext('2d');
ctx.drawImage(img,0,0);
var c = ctx.getImageData(0,0,img.width,img.height);
for(i=0; i<c.height; i++){
for(j=0; j<c.width; j++){
var x = (i*4)*c.width+(j*4);
var r = c.data[x];
var g = c.data[x+1];
var b = c.data[x+2];
if(r+g+b > 350){
c.data[x] = c.data[x+1] = c.data[x+2] = 0;
}
else{
c.data[x] = c.data[x+1] = c.data[x+2] = 255;
}
}
}  


然后我用画图工具放大图片,观察了一下,得出每个数字是一个12*8像素的矩形,再之后就求出每一个数字对应的像素个数,发现0和8还有6和9的像素个数是一样的,就进行一下特判(比如正中间有像素的就肯定是8而不是0了)。然后&hellip;&hellip;还是观察一下&hellip;&hellip;每个数字对应的矩阵的坐标&hellip;&hellip;写出这个函数:

代码如下:


function getNum(imgData,x1,y1,x2,y2){
var num = 0;
for(i=y1; i<y2; i++){
for(j=x1; j<x2; j++){
var x = (i*4)*imgData.width+(j*4);
if(imgData.data[x] == 255)num++;
}
}
switch(num)
{
case 56:{
j = (x1+x2)/2;
i = (y1+y2)/2;
var x = (i*4)*imgData.width+(j*4);
if(imgData.data[x] == 255)
return 8;
else
return 0;
}
case 30:return 1;
case 50:return 2;
case 51:return 3;
case 48:return 4;
case 57:return 5;
case 58:{
i = y2-2;
j = x1;
var x = (i*4)*imgData.width+(j*4);
if(imgData.data[x] == 255)
return 9;
else
return 6;
}
case 37:return 7;
default:return 0;
}
}


原文用了神经网络来判断,准确率大大提高,我不会用,所以就没用了&hellip;&hellip;
我用这个方法获得的验证码准确率也有95%以上,暂时够用了。有空再研究一下神经网络好了。
有需要的同学可以拿去用,Chrome浏览器要先装TamperMonkey,Firefox则是GeaseMonkey,然后安装这个脚本就ok了。

到此,相信大家对“如何利用html5 canvas破解简单验证码”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 如何利用html5 canvas破解简单验证码

本文链接: https://www.lsjlt.com/news/74857.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何利用html5 canvas破解简单验证码
    本篇内容主要讲解“如何利用html5 canvas破解简单验证码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何利用html5 canvas破解简单验证码”吧...
    99+
    2024-04-02
  • Python如何用爬虫破解滑动验证码?这五步简单易用
    在使用python爬虫抓取数据的时候经常会遇到网站为了防止机器人登录而设置了验证,除了最基本的字符验证之外还有滑块验证、图片验证、顺序验证等等验证方式。那我们今天就来讲一下python如何用爬虫破解滑...
    99+
    2023-09-04
    python 爬虫 开发语言
  • python滑块验证码如何破解
    很抱歉,我不能提供关于破解滑块验证码的信息。这是不道德且违法行为,违反了网站的服务条款和法律法规。我鼓励尊重和遵守所有的在线服务和法...
    99+
    2023-08-24
    python
  • 利用Python实现简单的验证码处理
    目录序言环境模块代码展示完整代码序言 我们在做采集数据的时候,过快或者访问频繁,或者一访问就给弹出验证码,然后就蚌珠了~ 今天就给大家来一个简单处理验证码的方法 环境模块 这里需要用...
    99+
    2024-04-02
  • 如何使用canvas显示验证码
    这篇文章主要介绍了如何使用canvas显示验证码,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。最近做了一个小需求,就是点击删除按钮,弹出提示弹框让你输入验证码确认删除。那么怎...
    99+
    2023-06-09
  • html5如何实现表单验证
    这篇文章主要介绍html5如何实现表单验证,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在深人探讨表单验证之前,让我们先思考一下表单验证的真实含义。就其核心而言,表单验证是一套系统,...
    99+
    2024-04-02
  • 如何利用HTML5 Canvas制作一个简单的打飞机游戏
    这篇文章主要介绍“如何利用HTML5 Canvas制作一个简单的打飞机游戏”,在日常操作中,相信很多人在如何利用HTML5 Canvas制作一个简单的打飞机游戏问题上存在疑惑,小编查阅了各式资料,整理出简单...
    99+
    2024-04-02
  • 如何使用canvas及js生成验证码
    这篇文章将为大家详细讲解有关如何使用canvas及js生成验证码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在很多时候都需要用到验证码,前端验证码需要知道Html5中的...
    99+
    2024-04-02
  • 怎么用Python破解滑动验证码
    本篇文章给大家分享的是有关怎么用Python破解滑动验证码,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。相信大家在登录某些网站的时候,都会遇到请输入验证码的状态,比如在哔哔哔哔...
    99+
    2023-06-02
  • HTML5如何利用约束验证API来检查表单的输入数据
    这篇文章将为大家详细讲解有关HTML5如何利用约束验证API来检查表单的输入数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。HTML5对于表单有着极大程度的优化,无论是...
    99+
    2024-04-02
  • 怎么用Python爬虫破解滑动验证码
    这篇文章给大家分享的是有关怎么用Python爬虫破解滑动验证码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、long(长整型...
    99+
    2023-06-14
  • HTML5如何实现表单自动验证功能
    这篇文章主要为大家展示了“HTML5如何实现表单自动验证功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“HTML5如何实现表单自动验证功能”这篇文章吧。在Ht...
    99+
    2024-04-02
  • 如何利用Python破解摩斯密码
    这篇文章将为大家详细讲解有关如何利用Python破解摩斯密码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。摩尔斯电码摩斯密码的定义如下:摩尔斯电码( 又译为摩斯密码,英语:Morse code)是一种时通...
    99+
    2023-06-29
  • 如何利用HTML5 Canvas API绘制矩形
    这篇文章主要为大家展示了“如何利用HTML5 Canvas API绘制矩形”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何利用HTML5 Canvas API...
    99+
    2024-04-02
  • 如何使用php+js实现极验,拖动滑块验证码验证表单
    这篇文章给大家分享的是有关如何使用php+js实现极验,拖动滑块验证码验证表单的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   代码实现   html文件   <!...
    99+
    2024-04-02
  • js如何实现简单的获取验证码按钮效果
    小编给大家分享一下js如何实现简单的获取验证码按钮效果,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!效果图:图(1)初始图图(2)点击后代码如下:<!DOCTYPE HTM...
    99+
    2024-04-02
  • 小程序如何实现简单的生成随机验证码
    本文小编为大家详细介绍“小程序如何实现简单的生成随机验证码”,内容详细,步骤清晰,细节处理妥当,希望这篇“小程序如何实现简单的生成随机验证码”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 //随机生成验...
    99+
    2023-06-26
  • 短信验证码校验功能如何利用SpringBoot实现
    本篇文章为大家展示了短信验证码校验功能如何利用SpringBoot实现,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。思路用户输入手机号后,点击按钮获取验证码。并设置冷却时间,防止用户频繁点击。后台生...
    99+
    2023-05-31
    springboot bo
  • HTML5如何解决表单验证失败的提示语问题
    这篇文章主要介绍HTML5如何解决表单验证失败的提示语问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!邮箱地址验证: <!DOCTYPE html>...
    99+
    2024-04-02
  • wordpress如何添加Html5的表单验证required方法
    这篇文章将为大家详细讲解有关wordpress如何添加Html5的表单验证required方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。表单验证 是防止垃圾评论的一个方面,wordpress...
    99+
    2023-06-09
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作