uipath执行js

前言

最近写脚本遇到一个问题,获取一组元素,循环遍历该组元素,每次执行到第二个元素的时候,就会报元素不识别,经定位操作完第一个元素之后,页面会发生变化,元素的位置跟之前不一样,如果该元素有隐藏属性,用uipath自带的页面交互抓取工具不会抓取到,也有可能是自己学艺不精,还没有深入参透uipath,不管怎样,我通过调用js实现了自己想要的。 其实相较于js,我较擅长python,但uipath并没有直接支持python,需要安装额外的活动包,并配置相关python环境,若放在其他机器上执行,也要一番配置,比较麻烦,遂放弃;在AI的帮助下,我可以快速写出js,且uipath可以直接执行js,言归正传,进入主题,详细记录uipath如何执行js

官方文档

uipath执行任何一个步骤,都是一个个活动串联起来的,执行js也是一个活动,这个活动叫Inject Js Script,路径UiPath.Core.Activities.NInjectJsScript。 按照我的作风,我爱看官方文档,上链接 docs.uipath.com/activities/...

官方文档介绍的不错,该有的都有,但我们实际使用的时候需要注意以下几点

(1) 在与 UiElement 对应的网页上下文中执行 JavaScript 代码。此活动必须添加到"使用应用程序/浏览器"活动中

(2) 参数script code,您想要运行的JavaScript代码。您可以在此处将其写为字符串,或者添加包含要执行的代码的.js文件的完整路径。切记你的操作应该包含一个单独的函数function里,不然就会报错

(3) 脚本返回结果是字符串变量,不管你的js 函数返回的是个布尔值,还是对象,数组,列表啥的,在uipath里看到的就是个字符串,之前调试就卡在这,我js 返回一个数组,我uipath定义一个数组存储它,总是报错;js返回的数组列表,怎么转成uipath能识别的数组,这又是另一番折磨; 我放弃,直接在js里把所有操作都写了,最后直接返回true/false

示例

第一种方式,直接写js code,我要挨个去点击按钮,但这些按钮都是隐藏的,我这样操作

第二种方式,调用js文件(写路径,相对路径),我要实现这种功能,告诉AI,帮我写代码

然后调试,在浏览器console可正常执行

放入uipath,去执行,基本没啥问题

相关推荐
扶苏10023 分钟前
“解构”与“响应”的博弈——深入剖析 Vue 3 的 toRef 与 toRefs
前端·javascript·vue.js
Channing Lewis1 小时前
zoho crm的子表添加行时,有一个勾选字段,如何让它在details页面新建子表行(点击add row)时默认是勾选的
开发语言·前端·javascript
董员外1 小时前
LangChain.js 快速上手指南:模型接入、流式输出打造基础
前端·javascript·后端
千寻girling2 小时前
面试官 : “ 请问你实际开发中用过 函数柯理化 吗? 能讲一下吗 ?”
前端·javascript·面试
change_fate3 小时前
vite 修改base之后需要修改public路径
javascript·vue.js
百锦再3 小时前
线程安全的单例模式全方位解读:从原理到最佳实践
java·javascript·安全·spring·单例模式·kafka·tomcat
程序员林北北3 小时前
【前端进阶之旅】一种新的数据格式:TOON
前端·javascript·vue.js·react.js·typescript·json
linux_cfan3 小时前
Chrome 彻底封杀 Flash 后,安防监控如何实现 RTSP 流无插件播放?(2026解决方案)
javascript·安全·实时音视频·html5
强子感冒了4 小时前
Javascript学习笔记:BOM和DOM
javascript·笔记·学习
Never_Satisfied4 小时前
在c#中,抛出异常,并指定其message的值
java·javascript·c#