解决大量重复操作浏览器页面的方法
  TzIKhmlW4Wk4 2023年11月13日 24 0

在工作中,我们会遇到需要在浏览器页面上进行大量重复操作的问题。

一、可以通过编写和在浏览器控制台执行脚本解决问题。

示例脚本1:

$('[id="processFormSubmitNext"]').click(); $('[title="结束办理"]').click(); $('[id="comment_textarea"]')[0].value = "已阅。"; window.confirm = () => { return true; }; grcsp_mockSubmitInWindow();

1.用$('[attr="xxx"]').click()获取元素进行点击操作

2.用$('[attr="xxx"]')[0].value进行赋值操作

3.用window.confirm = () => { return true; };解决浏览器弹框问题

4.grcsp_mockSubmitInWindow()即为页面点击函数。

 

示例脚本2:

const $ = (s) => { return document.querySelector(s); }; const wait = async () => { await new Promise(resolve => { setTimeout(resolve, 200); }); } ; $x('//span[text()="结束办理"]')[0].click(); await wait(); $('[placeholder="请选择常用意见"]').click(); await wait(); $('.el-select-dropdown__item').click(); await wait(); $(".confirm-btn button.el-button--primary").click(); await wait(); $('.el-message-box__btns .el-button--primary.fr').click();

1.重新定义$,防止出现未定义的情况

2.定义wait函数,在执行时可实现等待

3.$x('//span[text()="结束办理"]')[0].click()采用XPath定位元素

 

二、采用IPA实现

在IPA平台上通过拖拉拽方式编写IPA程序。

 

三、使用按键精灵实现

通过录制页面操作,按照坐标点击页面。

 

四、使用X Mouse Button Control实现

建议自定义鼠标中键,自定义按键示例如下:

{MSET:3470,368}{LMB}{WAITMS:1000}{MSET:2332,412}{LMB}{WAIT:6}{MSET:2212,122}{LMB}{WAITMS:800}{MSET:2967,524}{LMB}{WAITMS:500}{MSET:2820,673}{LMB}{WAITMS:850}{MSET:2686,720}{LMB}{WAITMS:800}{MSET:2926,754}{LMB}{WAITMS:2000}{MSET:2981,158}{LMB}{WAITMS:200}

1.MSET即移动到屏幕的某一坐标

2.LMB即点击鼠标左键

3.WAIT即等待几秒的延迟

4.WAITMS即等待几毫秒的延迟

5.需选择重复键入,直到按键被再次按下。

 

五、使用篡改猴(Tamper Monkey)或暴力猴(Violent Monkey)Chrome扩展程序执行编写的脚本

附:$x重定义

const $x = (s) => { return document.evaluate(s, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue; };

编写用户脚本后将脚本添加到插件中

 



【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
TzIKhmlW4Wk4