首页WIN10问题云扩研习社 | RPA高级开发技巧(下)

云扩研习社 | RPA高级开发技巧(下)

时间2022-11-09 02:00:03发布分享专员分类WIN10问题浏览102

使用场景: 目前在编辑器中已内置云扩自研浏览器无法找到组件 ,主要用于需要抓取浏览器请求的场景;比如浏览器请求返回中有一些通过界面自动化无法获取的字段,或者比界面自动化更高效的获取目标数据;

抓包配置:

云扩研习社 | RPA高级开发技巧(下)

配置文件位置:

文件配置介绍:

1)Encoobrowser.exe.config

云扩研习社 | RPA高级开发技巧(下)

2)Cer文件夹 template.json

云扩研习社 | RPA高级开发技巧(下)

对每一个 network 请求匹配,key值配到后生成带value前缀的文件,保存在 PathForStoringCacheFiles下;保存的文件会根据当前日期进行文件夹分割无法找到组件 。文件名称为 规则匹配值 毫秒级时间戳.json 文件,如下图所示:

云扩研习社 | RPA高级开发技巧(下)

文件内容格式如下:

云扩研习社 | RPA高级开发技巧(下)

文件格式为 request和response区分,其中request字段已经做了序列化处理,而response需要手动序列化无法找到组件 。

编写代码

支持在流程中编写代码片段或导入外部的代码无法找到组件 。支持C#, Python和PowerShell。当组件或者简单的表达式无法满足业务需求时,可以使用自定义代码类组件完成一些复杂的功能。

C#代码

C#代码与编辑器的表达式是高度契合的无法找到组件 。C#代码包含一个执行C#代码组件和一个C#代码文件。

这里介绍一下几种使用方式:

从左侧组件库中找到执行C#代码组件并拖拽至设计面板无法找到组件 ,默认会产生一个隐藏的cs代码文件.code\CSharp\执行CSharp代码.cs

云扩研习社 | RPA高级开发技巧(下)

当编辑代码时,会把隐藏的cs代码文件.code\CSharp\执行CSharp代码.cs包含进项目中无法找到组件 。

也可以在项目名上右键->导入文件,导入一个cs文件,然后将该cs文件拖拽入编辑器,会自动生成执行C#代码组件无法找到组件 。

注意:

执行CSharp代码组件中默认有一个Run()方法,这个Run方法是代码执行的入口,不能更改无法找到组件 。在C#代码中可以直接使用流程定义的变量和参数,也可以直接给流程定义的变量和参数赋值。

Python代码

流程中也可以使用python进行代码编写无法找到组件 。Python相关的组件在组件库->代码编程->Python这个目录中。注意,使用执行Python代码组件的时候,该组件必须要在Python环境这个组件的范围内。

PowerShell

如果你对PowerShell非常熟悉,也可以使用执行PowerShell组件无法找到组件 。

管理外部代码

Nuget代码市场

在流程中我们可以下载Nuget包,从而使用第三方的类库无法找到组件 。

云扩研习社 | RPA高级开发技巧(下)

私有代码市场

我们可以通过管理市场来创建私有的代码市场,这样我们可以通过这个私有市场共享和使用我们自己开发的Nuget包无法找到组件 。

外部代码的Package更新

当我们创建了私有的代码市场以后,我们可以把自己的nuget包复制到市场上无法找到组件 。

假如设置的是本地路径,就可以直接把nuget包放到这个路径上无法找到组件 。

假如设置的是网络路径,也可以把nuget复制到网络路径上无法找到组件 。

Nuget包的版本不是由编辑器控制的,编辑器中可以看到的包的版本取决于私有市上有多少这个包的不同版本的nuget包无法找到组件 。比如在设置的本地路径上有ESB.1.0.0.nupkg和ESB.1.0.1.nupkg两个包,那么在代码市场上就可以下载安装这两个包。

Excel高级技巧

云扩支持用同一批组件操作WPS和EXCEL,无需区分无法找到组件 。

执行宏

Excel宏是一些指令集,每个人在制作表格的过程中也许会有多种功能,而一直重复做的话会非常繁琐,因此就可以通过宏录制来节约时间简化步骤,对于提高工作效率是非常有好处的无法找到组件 。对于经常使用excel表格来工作的话,能有效地提高工作,让自己变得更轻松。

一些Excel组件里未曾覆盖到的功能,比如调整单元格的宽度,高度就可以由执行宏组件完成无法找到组件 ,参考如下示例:

1.准备

在打开/新建 组件中开启宏功能:

云扩研习社 | RPA高级开发技巧(下)

打开Excel无法找到组件 ,在Excel选项-信任中心, 开启宏权限:

云扩研习社 | RPA高级开发技巧(下)

2.生成宏代码

宏代码的使用可以自己书写,亦可有Excel里录制宏功能完成,如图:

云扩研习社 | RPA高级开发技巧(下)

录制完成后,可以点击查看宏,然后找到里面的宏代码

云扩研习社 | RPA高级开发技巧(下)

可以把里面代码复制出来,放到一个txt文件钟,如:VBA.txt按照步骤可以生成可执行的宏代码文件,里面一些参数可以自己定义无法找到组件 。

云扩研习社 | RPA高级开发技巧(下)

3.编辑执行宏组件

如上图示,定义了3个参数,单元格地址,列宽和行高来更自由的调整单元格无法找到组件 。

云扩研习社 | RPA高级开发技巧(下)

最后使用执行宏组件,填入各种参数,就可以正确执行:

云扩研习社 | RPA高级开发技巧(下)

自动填充

自动填充组件无法找到组件 ,等同于在Excel选中一个单元格,下拉拖拽的过程;

云扩研习社 | RPA高级开发技巧(下)

如果EXCEL内置有大量的序列(星期、日期、序列等),通过填充功能可以方便、快捷地输入这些内置序列无法找到组件 。

设置单元格格式

这个组件包括日常涉及到数值,货币,日期,时间等等,用户体验几乎和Office Excel设置单元格效果一样无法找到组件 。

云扩研习社 | RPA高级开发技巧(下)

复制粘贴

可以跨工作表或者当前工作表内进行区域复制粘贴,等同于在Office Excel选中一块区域复制粘贴效果无法找到组件 。

云扩研习社 | RPA高级开发技巧(下)

分列

分列就是将一列的数据按照既定分割规则填充到指定区域;

云扩研习社 | RPA高级开发技巧(下)

网页操作高级技巧

如何获取页面元素的特定属性

可以使用获取元素属性值组件来获取元素属性无法找到组件 ,支持自定义元素属性,只要目标元素上有对应的属性名称,都可以获取;

在浏览器中按F12快捷键,找到对应的目标元素节点,查看元素节点上是否有想要的属性值,比如索引、链接、title、以及其他属性都可以直接使用获取元素属性获取无法找到组件 。

如何批量获取元素属性

可以通过循环和获取文本、获取元素属性值等组件获取无法找到组件 。也可以使用获取结构化数据组件获取,使用自定义规则获取可以批量获取指定节点上的节点属性。

如何滚动页面

可以通过鼠标滚动(中键)组件或发送快捷键PgDn来滚动页面无法找到组件 。

如何操作名称相同的标签页

打开多个同名标签页定位元素时会默认在第一个标签页定位,如果需要定位到其他标签页元素,可以在选择器中不适用“Title”定位,改为使用“URL”或其他关键字进行定位无法找到组件 。

如何操作日期类元素

通常日期选择的元素均支持以标准格式输入文本无法找到组件 ,可以使用“输入文本”组件尝试输入“2022-05-13”,“2022/05/13”或“13-05-2022”等格式输入;如果页面不支持输入文本,可通过组件“设置Web元素属性值”直接对页面上日期元素的属性进行设置;

如上述方法均无效无法找到组件 ,可使用“点击”组件点击页面上的需要使用的日期:

云扩研习社 | RPA高级开发技巧(下)

可以使用变量来“SInfo”中的属性如{{String1}}来动态设置自己需要选择的时间无法找到组件 。

云扩研习社 | RPA高级开发技巧(下)

如何判断网页是否打开

首先网站可以通过JS的方法“document.readyState”等于“complete”来获取网站是否加载完成

如果使用打开浏览器组件时可以勾选“等待加载完成”属性来帮助等待页面状态无法找到组件 。如果页面始终处于加载状态,可以增加等待元素出现组件指定一个页面加载完成后才会出现的元素来判断页面的加载或打开的状态。

如何获取下拉框中的选项的内容

网页下拉框的选项对应的是“Select”的“Option”无法找到组件 ,如图

云扩研习社 | RPA高级开发技巧(下)

可以通过使用组件“获取元素属性值”指定这个“Select”无法找到组件 ,之后选择获取该元素的“innerhteml”

云扩研习社 | RPA高级开发技巧(下)

即可成功获取

云扩研习社 | RPA高级开发技巧(下)

桌面应用可以先添加一个“点击”组件展开下拉框,之后通过“获取区域结构”指定展开的下拉框来获取全部选项无法找到组件 。

如何使用浏览器上“右键”菜单项

使用组件点击指定要右键的元素,把属性“鼠标键”设置为“右键”即可无法找到组件 。

云扩研习社 | RPA高级开发技巧(下)

部分属性可能不支持默认的点击方式,如未成功触发也可修改属性“点击方式”无法找到组件 。

桌面端软件精准定位技巧

如何挑选最适合的录制技术无法找到组件 ,如何切换录制技术

首先要确定是否需要页面操作,如操作Excel、文件、邮箱等已有相应组件的应用,推荐使用相应的组件做软件自动化操作,远比页面操作要准确、稳定并且快速无法找到组件 。确需进行界面自动化操作的,需要安装对应的扩展,如Java扩展,Chrome扩展等。

在安装扩展后指定元素时通常使用默认的Automation录制技术就会自动适配推荐的录制技术,如录制Chrome时会自动使用Chrome技术,录制桌面应用默认使用UIA技术等等无法找到组件 。

当上述自动适配的录制技术无法满足时,可以在指定元素时按“F4”来手动切换到自己需要的录制技术,如把UIA技术换为对旧应用适配更好的IA技术等无法找到组件 。

怎样让组件精准定位元素

使用定位的属性越多,定位就越精确,请确保在选择器中使用多个属性,且尽量避免出现和使用“Index”属性无法找到组件 。此外在指定元素时指定到按钮上的文本会比指定按钮的框体更加精确,建议在指定元素时优先指定有文本的元素。

如何点击无法录制的元素

部分元素无法直接录制(如SAP表格)无法找到组件 ,此时可以通过使用“点击”组件指定可以录制的元素,之后设置属性“偏移”,即可点击无法录制的元素:

云扩研习社 | RPA高级开发技巧(下)

上述技术仍无法满足使用场景时怎么办

1)使用AI系列组件无法找到组件 ,可以通过调用第三方的服务实现一些功能,不过需要付费使用;

2)图像识别,图像识别即录制下指定的元素图片,在运行时将目标区域与录制时的图片进行对比,当达到设置的相似度后即可成功运行无法找到组件 。

需要使用图像识别可在指定元素时按住Ctrl再拖动鼠标左键框选目标,这样组件运行时就会以图像识别的技术去运行无法找到组件 。需注意图像识别会受到诸如系统版本、分辨率、缩放比例、窗口大小等各种情况影响,推荐在默认的其他录制技术无效后再尝试使用;

屏幕文本化对MFC应用支持的非常好,但对其他应用支持较差无法找到组件 。仅推荐对MFC应用进行自动化操作时使用。

计算机视觉,计算机视觉组件会根据训练的模型去智能识别窗口中的元素和文本,训练的模型越久,识别的精度就越高,不过当前的训练模型仍旧有限,建议上述均无效后再尝试使用无法找到组件 。

通过发送快捷键等方式实现自动化无法找到组件 。可能有极少的应用由于框架和技术的老旧使得使用现有录制技术均不能很好的操作时,可以使用发送快捷键,坐标等方式进行兜底操作。

爱资源吧版权声明:以上文中内容来自网络,如有侵权请联系删除,谢谢。

云扩研习社高级开RPA云扩研RPA无法找到组件
闲鱼卖家怎么一键批量自助打单?用会软件其实超简单 怎么安全的清理WinSxS文件夹?