位置: 编程技术 - 正文

使用 Node.js 模拟滑动拼图验证码操作的示例代码(nodejs模拟浏览器环境)

编辑:rootadmin

推荐整理分享使用 Node.js 模拟滑动拼图验证码操作的示例代码(nodejs模拟浏览器环境),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node模拟数据,node.js demo,使用nodejs模拟后端服务 csdn,node.js怎么用,node模拟数据,node.js模拟登录,node.js demo,node.js模拟登录,内容如对您有帮助,希望把文章链接给更多的朋友!

近几年,网页上各种新型验证码层出不穷,其中一种比较常见的是滑动验证码,比如下图这种。

本文介绍了一种使用纯前端方法寻找滑动终点并模拟滑动的方法。

我们需要三个依赖库: puppeteer 、 Resemble.js 以及canvas 。其中 puppeteer 用于打开并操作页面, Resemble.js 及 canvas 用于寻找滑动验证码的终点位置。相关依赖如下:

接下来是实现要点。首先,引入所需的库,定义一些常量。

接下来,使用 puppeteer 打开验证码页面:

然后往页面上注入一段 JS ,获取验证码滑块的位置。这一段代码可能需要你根据自己页面的实际情况进行调整。

接下来,模拟按下鼠标左键,再放开,并分别截图。

使用 Node.js 模拟滑动拼图验证码操作的示例代码(nodejs模拟浏览器环境)

此时可以得到两个图片:

以及:

可以看到,两个图其余部分都相同,区别在于是否显示验证码滑块以及目标位置。

接下来,就轮到 Resemble.js 出场了,可以使用它获得两个图片的 diff 结果。

结果如下:

接下来,再使用 canvas 库,将这个 diff 图片读入内存,从右上角开始查找,很容易即可找到最右侧色块的位置,也即滑块终点的位置。

这样,便获得了滑块的起始位置以及终点位置,再使用 puppeteer 的 page.mouse.move 方法模拟拖动,将滑块拖到终点位置即可。

当然,找到滑块终点并把滑块拖到正确的终点位置只是第一步,完善的滑动验证码并不会只判断有没有滑到正确的位置,还会分析你的拖动轨迹。要知道,人滑动的轨迹和机器滑动的轨迹是有很大不同的,至于具体如何区分就是另一个复杂的话题了。

最后,本文仅供研究参考,不要问我要详细代码。

标签: nodejs模拟浏览器环境

本文链接地址:https://www.jiuchutong.com/biancheng/368545.html 转载请保留说明!

上一篇:Node.js学习教程之HTTP/2服务器推送【译】(node. js教程)

下一篇:Node.js实现发送邮件功能(nodejs发送http请求)

  • 销售额是含税价还是不含税价
  • 增值税专用发票使用规定 最新
  • 城市维护建设税是什么意思
  • 应付职工薪酬应发数
  • 企业弥补以前年度亏损顺序
  • 广告设计公司挣钱吗
  • 装修收入如何填报增值税表
  • 如何从对公账户的资金情况来确定案件,发现犯罪嫌疑人?
  • 先开了发票给客户,不付款怎么办
  • 租赁的房租再出租成本怎么做?
  • 税收用在哪些方面
  • 收到一笔误缴的税款
  • 取得与收益相关的政府补助会计分录
  • 外币报表折算差额在会计报表中应作为
  • 建安企业预缴企业所得税税率
  • 会计账簿的定义及其作用
  • 利润表中所得税费用为负数是什么意思
  • 业务宣传费和广告费有什么区别
  • 处于成熟期的企业其预算模式的特点是以什么为起点
  • 一般纳税人技术开发税率
  • 上交印花税分录
  • 业务招待费进项税额转出
  • 小规模自开专票税率是1%还是3%
  • 筹资费用的含义
  • 端游上古世纪
  • php字符串定义的三种方式
  • 多收不用退的货物怎么办
  • 购进商品怎么做会计分录
  • 营改增后的增值税税目税率表
  • 便秘怎么办 女性
  • DeepLabV3+:Mobilenetv2的改进以及浅层特征和深层特征的融合
  • 记账凭证和收付账簿区别
  • uniapp示例
  • insg命令
  • domain codomain range
  • php中array怎么用
  • 外埠存款通过哪个会计账户核算?
  • 帝国cms使用手册
  • 施工单位代建收费合法吗
  • php前台模板
  • python smote算法
  • 资产超过5000万的家庭有多少
  • 企业哪些情况下需要报税
  • 企业资产评估后多久上市
  • 会员退费怎么算
  • 营运资金周转率是什么指标
  • 理财产品怎么收费
  • 主要业务活动是什么意思
  • 应收账款和应付账款属于什么科目
  • 招待费具体范围包括哪些
  • 购买银行理财产品的几个必须知道
  • 应收账款贷方有余额说明什么
  • 待抵扣税额转入进项税额的分录
  • 客户用个人账户转4s店开公司的机动车发票
  • 公司筹建期间允许投标吗
  • 公司车折旧会计分录
  • 加油费不征税发票可以报销吗
  • 对公网银回单可以导出吗
  • 印花税应税凭证是还是否
  • microsoft wlan
  • windowsserver2003ftp服务器怎么搭建
  • win7旗舰版关闭强制签名
  • win7如何删除网络上的其它计算机
  • win7软件界面显示不全怎么办
  • node.js项目结构
  • 深入理解python特性pdf百度云
  • 什么是漫反射贴图
  • javascript入门教程
  • Node.js中的construct构造函数
  • sort 函数
  • 安卓手机更新时间
  • 详解python时间模块中的datetime模块
  • Unity Enemy behaviour
  • 骞怎么读什么意思是什么
  • python怎么用
  • python函数判断
  • javascript面向对象吗
  • 领导班子和领导干部年度考核
  • 职工疗养费可以税前扣除吗
  • 紧缩性财政政策有哪些
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设