录制用户操作实现自动化任务

先上视频!!

流程自动化工具-录制操作绘制流程

这个想法之前就有了,趁着周末时间给它撸出来。

实现思路

从之前的文章自动化桌面未来展望中已经验证了录制绘制流程图的可行性。基于DOM录制页面操作轨迹的思路监听页面点击、输入事件即可,同时获取当前操作元素的Xpath,最后生成之前定义数据格式。

// 监听点击事件
  document.body.addEventListener('click', _throttleOnClick, {
      capture: true, 
      passive: true,
    })

// 监听输入事件
   document.body.addEventListener('input', _throttleOnInput, {
      capture: true,
      passive: true,
    } )

操作数据重复过多?

当在输入框输入字符时,每次都触发输入事件,发现打印出来数据很多,例如:第一次输入'q',触发了一次,此时记录了'q',紧接输入'w',触发了一次,此时记录'qw',而真正想要的是最后一次的'qw', 而不是['q', 'qw'],因此得做了一个数据去除重复的,思路: 把xpath作为唯一key,遍历数组,只要上次操作xpath与xpath一致,就把上一次xpath数据去除。点击事件也是如此。

周末愉快

不上班,呆在浏览器的时间还是一样的多!!哈哈

相关推荐
Dusk_橙子2 分钟前
在运维工作中,Lvs、nginx、haproxy工作原理分别是什么?
运维·nginx·lvs
小wanga15 分钟前
【Linux】网络层、数据链路层、DNS、ICMP协议、NAT技术
linux·运维·网络
大囚长1 小时前
deepseek+ansible实现AI自动化集群部署
人工智能·自动化·ansible
IT成长日记1 小时前
Ansible运行原理揭秘:如何用YAML脚本掌控数服务器?
运维·服务器·ansible·架构与原理
艾思科蓝 AiScholar1 小时前
【 IEEE出版 | 快速稳定EI检索 | 往届已EI检索】2025年储能及能源转换国际学术会议(ESEC 2025)
人工智能·计算机网络·自然语言处理·数据挖掘·自动化·云计算·能源
千羽星弦1 小时前
Jenkins在Windows上的使用(二):自动拉取、打包、部署
运维·windows·jenkins
Ashmcracker1 小时前
Jenkins链接私有仓库Failed to connect to repository,stderr: No ECDSA...的问题
运维·jenkins·devops
嵌入式-老费1 小时前
Linux上位机开发实战(x86和arm自由切换)
linux·运维·arm开发
人间凡尔赛2 小时前
VSCode-Server 在 Linux 容器中的手动安装指南
linux·运维·服务器·docker
板鸭〈小号〉2 小时前
Linux开发工具----vim
linux·运维·vim