位置: 编程技术 - 正文

使用 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请求)

  • 注册资本没有到位可以注销吗
  • 生产经营所得个人所得税怎么申报
  • 教培行业提成一般多少
  • 自产产品用于职工福利会计处理
  • 应收账款是开票减去货款吗对吗
  • 劳务公司拿什么来做成本
  • 如何开增值税专用发票视频
  • 一个人可以在多家公司任职吗
  • 购进货物没有发票接受虚开判刑案例
  • 出口企业免抵税额要作进项转出吗
  • 红冲发票跨年怎么操作
  • 小规模纳税人企业所得税起征点
  • 事业单位之间调动需要多久
  • 公司按最低标准缴纳社保
  • 金融服务利息
  • 电费收入印花税如何计算
  • 代扣代缴个人所得税现金流计入哪里
  • 公务用车用油
  • 应付利息在资产负债表中属于什么项目
  • 企业做账会计需要什么资质
  • 外地项目的预交税款没交怎么办
  • 个体工商户变更法人
  • 哪些费用可以抵扣进项税吗
  • 中期支付内容包括
  • 广告公司收到专票怎么做成本
  • 纳税人拒绝代扣代缴,扣缴义务人应当
  • 待摊费用当月增加
  • 增值税专用发票的税率是多少啊
  • 直接计入当期利润的利得,即企业非日常
  • pcas service进程可以关闭么
  • php字符串函数有哪些
  • 其他暂收应付款项有哪些
  • 企业实际缴纳税款额账务怎么看
  • 公司报销医疗费用公司医保里面的钱也报吗
  • 已入账的发票跨月能用吗
  • codecline
  • 企业低值易耗品摊销计入产品成本的方法
  • 图像质量评价指标及方法 图像工程
  • 代垫运杂费计入原材料成本吗
  • 管理成本分摊比例是多少
  • 企业税金总额包括什么
  • 征地费用包括
  • 电力安装有前途吗
  • 非三包退车能否退款
  • sql2008收缩日志文件
  • 出差会计处理
  • 公司送礼计入什么会计科目
  • 代缴车险
  • 营改增后房地产企业增值税如何核算
  • 当月只有进项税额会计怎么做账
  • 提前报废固定资产需要补提折旧
  • 公司收到股东的投资款以后怎么处理
  • 个人承担社保如何办理
  • 企业缴纳社保要下载什么软件
  • 技术咨询服务开票代码
  • 财务工作交接的通知
  • 新公司要建哪些项目
  • sql server Bulk Insert命令详细
  • win7系统设置打印机共享
  • Computer Browser是什么进程,Computer Browser有什么用?
  • 在linux系统中,用来存放系统所需要的配置文件和子目录
  • windows7 设置
  • Win10 TH2首个重要更新后应用商店依然存在问题
  • windows7磁盘清理命令
  • win10系统无法登陆
  • linux vi中查找内容
  • 宽带连接找不到设备是怎么回事
  • iframe语法
  • Android 摄像头预览卡顿
  • 超级硬盘数据恢复软件v2.7
  • jQuery通过ajax方法获取json数据不执行success的原因及解决方法
  • python写汉字代码
  • python设计gui
  • unity3d mod
  • 五十八二
  • 苏州峰谷电怎么申请
  • 如何在网上查看自己的征信
  • 网上缴费后如何复电
  • 如何查询企业上市情况
  • 90平房子税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设