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

先上视频!!

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

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

实现思路

从之前的文章自动化桌面未来展望中已经验证了录制绘制流程图的可行性。基于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数据去除。点击事件也是如此。

周末愉快

不上班,呆在浏览器的时间还是一样的多!!哈哈
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/518435.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

服务器通过impitool设置BMC共享lan实现远程管理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、NC-SI是什么?二、ipmitool是什么三、查看是否支持ipmi设备四、安装ipmitool五、开始配置1.查看网卡状态2.设置运行模式3.设置静态地址 六、验证…

C# LINQ基础

LINQ基础 1. 入门2. 运算符流语法2.1 连续使用查询运算符2.2 使用Lambda表达式2.2.1 Lambda表达式及Func的方法签名2.2.2 Lambda表达式和元素类型2.2.3 自然排序2.2.4 其他查询运算符 3 查询表达式4 延迟执行4.1 重复执行4.2 捕获的变量4.3 延迟加载的工作原理4.4 查询语句的执…

Unity背景模糊图片高斯模糊高性能的实现方案

环境: unity2021.3.x 效果: 模糊前: 模糊后: 模糊前: 模糊后: 实现核心思路(shader): SubShader {CGINCLUDE#include "UnityCG.cginc"sampler2D _MainTex; // 主纹理half4 _MainTe…

Autosar教程-Mcal教程-GPT配置教程

3.3GPT配置、生成 3.3.1 GPT配置所需要的元素 GPT实际上就是硬件定时器,需要配置的元素有: 1)定时器时钟:定时器要工作需要使能它的时钟源 2)定时器分步:时钟源进到定时器后可以通过分频后再给到定时器 定时器模块选择:MCU有多个定时器模块,需要决定使用哪个定时器模块作…

开发知识点-python-Tornado框架

介绍 Tornado是一个基于Python语言的高性能Web框架和异步网络库,它专注于提供快速、可扩展和易于使用的网络服务。由于其出色的性能和灵活的设计,Tornado被广泛用于构建高性能的Web应用程序、实时Web服务、长连接的实时通信以及网络爬虫等领域。 Torna…

Claude3超大杯发布,将取代ChatGPT4?

演示站点: https://ai.uaai.cn 创作模块 (Claude3已接入,欢迎体验)官方论坛: www.jingyuai.com 前言 今天【超越GPT-4 接近人类水平!Claude 3系列大模型惊艳问世】登上了全网热搜,那么【超…

React_ 三、Router路由配置

文章目录 [TOC](文章目录) Router路由配置安装和封装使用声明式导航Link和编程式导航useNavigate 导航传参useSearchParams 接收传参useParams 接收传参 路由嵌套children和菜单式渲染404路由配置 路由模式history模式,无/#/ 需要后端支持hash模式,有/#/…

【Flink网络传输】ShuffleMaster与ShuffleEnvironment创建细节与提供的能力

文章目录 一. Taskmanager之间传递数据细节二. ShuffleService的设计与实现三. 在JobMaster中创建ShuffleMaster四. 在TaskManager中创建ShuffleEnvironment五. 基于ShuffleEnvironment创建ResultPartition1. 在task启动时创建ResultPartition2. ResultPartition的创建与对数据…

C++写食堂菜品管理系统

说明:本博文来自CSDN-问答板块,题主提问。 需要:学校拟开发一套食堂菜品管理系统,以便对菜品和同学们的评价进行管理,其中包含如下信息: 商户:商户名称、柜面位置、电话…… 菜品:菜品编号、菜品名称、价格、所属商户…… 学生:注册账号、昵称、电话…… 食堂里的商户…

arguments和剩余参数(...)

1、arguments对象 是函数内部内置的对象,是一个伪数组,包含了调用函数是传入的所有实参。可用来动态获取函数的实参。 function init(a,b,c) {console.log(arguments)}init(1,2,3) 2、剩余函数(...) 获取多余的实参,并形成一个真数组&#xf…

不精确一维搜索:Armijo-Goldstein准则Wolfe-Powell准则

一维搜索/线搜索 1.引言2.内容3.准则思想 1.引言 为了防止迭代过程中函数值 f ( x k ) f(x^k) f(xk) 的下降量不够充分,以至于算法无法收敛到极小值点,必须引入一些更合理的线搜索准则来确保迭代的收敛性。保证每一步迭代充分下降。 2.内容 line sea…

PMP证书:究竟值不值得考?含金量如何?

PMP证书在项目管理领域还是很受关注,但其含金量和是否必须考取一直存在争议。在这里,我们来深入分析,看看PMP证书到底值不值得考,以及背后的原因。 首先,我们要关注的是PMP考试的通过率。根据网络数据,PMP…