使用场景: 目前在编辑器中已内置云扩自研浏览器,主要用于需要抓取浏览器请求的场景;比如浏览器请求返回中有一些通过界面自动化无法获取的字段,或者比界面自动化更高效的获取目标数据;抓包配置:
配置文件位置:文件配置介绍:1)Encoobrowser.exe.config
2)Cer文件夹 template.json
对每一个 network 请求匹配,key值配到后生成带value前缀的文件,保存在 PathForStoringCacheFiles下;保存的文件会根据当前日期进行文件夹分割。文件名称为 规则匹配值 毫秒级时间戳.json 文件,如下图所示:
文件内容格式如下:
文件格式为 request和response区分,其中request字段已经做了序列化处理,而response需要手动序列化。编写代码支持在流程中编写代码片段或导入外部的代码。支持C#, Python和PowerShell。当组件或者简单的表达式无法满足业务需求时,可以使用自定义代码类组件完成一些复杂的功能。C#代码C#代码与编辑器的表达式是高度契合的。C#代码包含一个执行C#代码组件和一个C#代码文件。这里介绍一下几种使用方式:从左侧组件库中找到执行C#代码组件并拖拽至设计面板,默认会产生一个隐藏的cs代码文件.code\CSharp\执行CSharp代码.cs
当编辑代码时,会把隐藏的cs代码文件.code\CSharp\执行CSharp代码.cs包含进项目中。也可以在项目名上右键->导入文件,导入一个cs文件,然后将该cs文件拖拽入编辑器,会自动生成执行C#代码组件。注意:执行CSharp代码组件中默认有一个Run()方法,这个Run方法是代码执行的入口,不能更改。在C#代码中可以直接使用流程定义的变量和参数,也可以直接给流程定义的变量和参数赋值。Python代码流程中也可以使用python进行代码编写。Python相关的组件在组件库->代码编程->Python这个目录中。注意,使用执行Python代码组件的时候,该组件必须要在Python环境这个组件的范围内。PowerShell如果你对PowerShell非常熟悉,也可以使用执行PowerShell组件。管理外部代码Nuget代码市场在流程中我们可以下载Nuget包,从而使用第三方的类库。
私有代码市场我们可以通过管理市场来创建私有的代码市场,这样我们可以通过这个私有市场共享和使用我们自己开发的Nuget包。外部代码的Package更新当我们创建了私有的代码市场以后,我们可以把自己的nuget包复制到市场上。假如设置的是本地路径,就可以直接把nuget包放到这个路径上。假如设置的是网络路径,也可以把nuget复制到网络路径上。Nuget包的版本不是由编辑器控制的,编辑器中可以看到的包的版本取决于私有市上有多少这个包的不同版本的nuget包。比如在设置的本地路径上有ESB.1.0.0.nupkg和ESB.1.0.1.nupkg两个包,那么在代码市场上就可以下载安装这两个包。Excel高级技巧云扩支持用同一批组件操作WPS和EXCEL,无需区分。执行宏Excel宏是一些指令集,每个人在制作表格的过程中也许会有多种功能,而一直重复做的话会非常繁琐,因此就可以通过宏录制来节约时间简化步骤,对于提高工作效率是非常有好处的。对于经常使用excel表格来工作的话,能有效地提高工作,让自己变得更轻松。一些Excel组件里未曾覆盖到的功能,比如调整单元格的宽度,高度就可以由执行宏组件完成,参考如下示例:1.准备在打开/新建 组件中开启宏功能:
打开Excel,在Excel选项-信任中心, 开启宏权限:
2.生成宏代码宏代码的使用可以自己书写,亦可有Excel里录制宏功能完成,如图:
录制完成后,可以点击查看宏,然后找到里面的宏代码
可以把里面代码复制出来,放到一个txt文件钟,如:VBA.txt按照步骤可以生成可执行的宏代码文件,里面一些参数可以自己定义。
3.编辑执行宏组件如上图示,定义了3个参数,单元格地址,列宽和行高来更自由的调整单元格。
最后使用执行宏组件,填入各种参数,就可以正确执行:
自动填充自动填充组件,等同于在Excel选中一个单元格,下拉拖拽的过程;
如果EXCEL内置有大量的序列(星期、日期、序列等),通过填充功能可以方便、快捷地输入这些内置序列。设置单元格格式这个组件包括日常涉及到数值,货币,日期,时间等等,用户体验几乎和Office Excel设置单元格效果一样。
复制粘贴可以跨工作表或者当前工作表内进行区域复制粘贴,等同于在Office Excel选中一块区域复制粘贴效果。
分列分列就是将一列的数据按照既定分割规则填充到指定区域;
网页操作高级技巧如何获取页面元素的特定属性可以使用获取元素属性值组件来获取元素属性,支持自定义元素属性,只要目标元素上有对应的属性名称,都可以获取;在浏览器中按F12快捷键,找到对应的目标元素节点,查看元素节点上是否有想要的属性值,比如索引、链接、title、以及其他属性都可以直接使用获取元素属性获取。如何批量获取元素属性可以通过循环和获取文本、获取元素属性值等组件获取。也可以使用获取结构化数据组件获取,使用自定义规则获取可以批量获取指定节点上的节点属性。如何滚动页面可以通过鼠标滚动(中键)组件或发送快捷键PgDn来滚动页面。如何操作名称相同的标签页打开多个同名标签页定位元素时会默认在第一个标签页定位,如果需要定位到其他标签页元素,可以在选择器中不适用“Title”定位,改为使用“URL”或其他关键字进行定位。如何操作日期类元素通常日期选择的元素均支持以标准格式输入文本,可以使用“输入文本”组件尝试输入“2022-05-13”,“2022/05/13”或“13-05-2022”等格式输入;如果页面不支持输入文本,可通过组件“设置Web元素属性值”直接对页面上日期元素的属性进行设置;如上述方法均无效,可使用“点击”组件点击页面上的需要使用的日期:
可以使用变量来“SInfo”中的属性如{{String1}}来动态设置自己需要选择的时间。
如何判断网页是否打开首先网站可以通过JS的方法“document.readyState”等于“complete”来获取网站是否加载完成如果使用打开浏览器组件时可以勾选“等待加载完成”属性来帮助等待页面状态。如果页面始终处于加载状态,可以增加等待元素出现组件指定一个页面加载完成后才会出现的元素来判断页面的加载或打开的状态。如何获取下拉框中的选项的内容网页下拉框的选项对应的是“Select”的“Option”,如图
可以通过使用组件“获取元素属性值”指定这个“Select”,之后选择获取该元素的“innerhteml”
即可成功获取
桌面应用可以先添加一个“点击”组件展开下拉框,之后通过“获取区域结构”指定展开的下拉框来获取全部选项。如何使用浏览器上“右键”菜单项使用组件点击指定要右键的元素,把属性“鼠标键”设置为“右键”即可。
部分属性可能不支持默认的点击方式,如未成功触发也可修改属性“点击方式”。桌面端软件精准定位技巧如何挑选最适合的录制技术,如何切换录制技术首先要确定是否需要页面操作,如操作Excel、文件、邮箱等已有相应组件的应用,推荐使用相应的组件做软件自动化操作,远比页面操作要准确、稳定并且快速。确需进行界面自动化操作的,需要安装对应的扩展,如Java扩展,Chrome扩展等。在安装扩展后指定元素时通常使用默认的Automation录制技术就会自动适配推荐的录制技术,如录制Chrome时会自动使用Chrome技术,录制桌面应用默认使用UIA技术等等。当上述自动适配的录制技术无法满足时,可以在指定元素时按“F4”来手动切换到自己需要的录制技术,如把UIA技术换为对旧应用适配更好的IA技术等。怎样让组件精准定位元素使用定位的属性越多,定位就越精确,请确保在选择器中使用多个属性,且尽量避免出现和使用“Index”属性。此外在指定元素时指定到按钮上的文本会比指定按钮的框体更加精确,建议在指定元素时优先指定有文本的元素。如何点击无法录制的元素部分元素无法直接录制(如SAP表格),此时可以通过使用“点击”组件指定可以录制的元素,之后设置属性“偏移”,即可点击无法录制的元素:
上述技术仍无法满足使用场景时怎么办1)使用AI系列组件,可以通过调用第三方的服务实现一些功能,不过需要付费使用;2)图像识别,图像识别即录制下指定的元素图片,在运行时将目标区域与录制时的图片进行对比,当达到设置的相似度后即可成功运行。需要使用图像识别可在指定元素时按住Ctrl再拖动鼠标左键框选目标,这样组件运行时就会以图像识别的技术去运行。需注意图像识别会受到诸如系统版本、分辨率、缩放比例、窗口大小等各种情况影响,推荐在默认的其他录制技术无效后再尝试使用;屏幕文本化对MFC应用支持的非常好,但对其他应用支持较差。仅推荐对MFC应用进行自动化操作时使用。计算机视觉,计算机视觉组件会根据训练的模型去智能识别窗口中的元素和文本,训练的模型越久,识别的精度就越高,不过当前的训练模型仍旧有限,建议上述均无效后再尝试使用。通过发送快捷键等方式实现自动化。可能有极少的应用由于框架和技术的老旧使得使用现有录制技术均不能很好的操作时,可以使用发送快捷键,坐标等方式进行兜底操作。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。