入门阶段, 花时间学习和记忆细枝末节,可能会反而分散新手去理解核心逻辑的精力,并且不常用的知识也很容易被遗忘。
简介:
什么是RPA?
RPA(Robotic Process Automation,机器人流程自动化)本质上是一种“AI数字员工”,针对企业中存在的大批量、重复性、机械化人工操作,通过模拟人的工作流程使之实现自动化。
bit-Worker RPA可以应用于多种数据量大、重复度高、规则明确、跨业务系统、高人力成本的业务场景下,例如银行、物流、证券、供应链等等。
九科官网如下:
以下是对九科 bit-Worker Designer 介绍视频学习内容,以及思维导图:
设计器初级内容:
(1)设计器界面各模块
bit-Worker 流程设计器界面各模块的功能如下:
- 自动化组件面板:流程新建与管理、400+自动化组件工具箱、系统及业务配置中心、第三方库导入;
- 工程栏:标准化调试与运行功能、工程发布、版本管理;
- 流程搭建画布:流程设计区;
- 要素栏:变量/参数/元素/图片集中创建管理区;
- 信息栏:工程运行结果、工程运行日志、变量变化查看;
- 属性面板:活动组件属性编辑、流程概要。
(2)工程设置
参数、变量、库、属性、配置等各项要素的设置和管理
(1)参数:在流程执行时由外界动态传入具体的值
变量在活动之间传递数据,而参数在流程之间传递数据。
(2)变量:点击使用Ctrl+K新建变量
(3)库:工程栏下的功能库可右键 “导入” python库 或我的功能库 进行库的导入
(4)配置中心:
(3)元素及图片集
元素集和图片集的概念以及使用方法
(4)一般流程控制
通过 if、while、for-each(遍历循环、并行遍历) 和 try-catch 从而进行流程控制
(5)元素与图片操作
元素操作:
图片操作实例:
‼️注意:需要注意的是路径需要使用双斜杠
(6)调试与运行
中级内容
(1)Python代码执行
使用bit-Worker执行代码以及文件
(2)数据处理(数据表、字符串)
数据表操作——>数据表联结需要有相同的列!!
字符串操作较为简单
(3)🌟网页操作自动化
网页操作自动化——>定位,操作
案例:自动化填写表单的简单流程
具体操作步骤:界面自动化/游览器/ 新建游览器——>元素操作/鼠标/点击——>鼠标键盘/鼠标/滚轮——>应用/Excel/获取指定行内容——>界面自动化/元素操作/键盘/发送文本(需要逐一将输入框与表格单元格录入的内容进行对应)
(4)操作系统自动化
案例:如对文件和文件夹进行相关操作活动
(5)应用程序自动化 (Excel、邮件)
可实现Excel与浏览器相关活动、进行收发邮件相关的活动
案例:抓取网页数据,追加到表格
抓取 页面表格 数据汇总 实操解析:
- 可通过 “数据抓取” 拿到网页数据。此时抓取数据为数据表即 System.Data.DataTable;
- 再通过数据表的 “获取列” 将数据表抓取的数据通过输出项的 “输出列数组” 转换为 System.Object[] 类型的数据;
- 再通过Excel的 “写入列” 将抓取的数据进行汇总到一个表格。
单独看邮件字段操作如下:
(6)流程控制 (状态机、流程图)
1*状态机说明:
- 状态机:建模容器,内部只能放置状态流与跳转条件;
- 状态流:分为入口、出口和跳转条件;
- entry:进入状态流时要执行的活动;
- exit:离开状态流时要执行的活动;
- 跳转条件:判断是否满足给定条件、满足哪个条件,以决定流程执行的流向。
(7)UI探测器
UI探测器各模块介绍:
- 菜单栏:验证、元素高亮、元素捕获、元素锚点;
- 可视化栏:可视化树、属性展示;
- 选取栏:特征选取、属性选取;
- 结果栏:结果代码显示、元素缩略图显示。
(8)流程录制
九科技术文档如下:
产品概述 · GitBookhttps://help.ninetechone.com/
以下是对官方技术文档的详细内容的学习
(着重注意组件的输入、输出项,因为大概率会遇到数列类型有误,报错看不懂找不到的问题,需要有心理准备):
一、流程设计器
流程设计
子流程
(1)使用说明:
- 一个工程中可以包含多个子流程,每个子流程都可单独调试运行
- 子流程可通过 「引用流程」 活动组件,在工程中相互引用(但子流程不可以引用Main流程);
- 流程之间可以通过 参数 设置来传递参数
属性与要素
(1)属性
基本信息:活动组件名称;
输入项:文本、元素、数据表或者使用变量指定;
输出项:输出项必须使用相应类型的变量指定;
通用设置:包括异常处理、重试次数、重试时间间隔(ms)、执行前延迟(ms)、执行后延迟(ms)等,属于活动的通用属性。
将作用和形式相近的属性归为一组,即属性组
(2)变量
底部要素栏的变量的 「变量列表」 按钮,可以打开当前流程的变量列表,列表中展示了当前流程中的所有变量
数据类型
1.String:文本类型;
2.Int32:数字类型(整数类型——>不带小数点和小数位);
3.Double:双精度浮点型;
4.Boolean:布尔类型;
5.DateTime:日期和时间类型——>在程序中存储日期和时间信息;
6.GenericValue:泛型——>是bit-Worker独有的一种数据类型,可以用于存储任何类型的数据,例如:Boolean、DateTime、String、Int32类型的数据;
7.Array:数组类型:存储同数据类型的多个值(整数类型数组、字符串类型数组、布尔值类型数组等);
8.Dictionary:字典类型:由Key(键-唯一)和Value(值)两个元素组成;
9.List:列表类型:实现大多数集合类的数据结构——>字符,数字,字符串甚至可以包含列表(即嵌套)。列表用[ ]标识,是最通用的复合数据类型。
列表和字典的区别是:
列表是有序的对象集合,字典是无序的对象集合。字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用"{ }"标识
(3)参数
- In(输入参数)
- Out(输出参数)
- InOut(输入输出参数)
输入参数可以接收到其他流程传递过来的参数
输出参数可以把本流程的参数传递出去给其他流程。
(4)元素集
进行“捕获新元素”从而获得新的元素信息,可以在“UI探测器”中进行编辑
右侧是已捕获元素的缩略图
右下角 编辑选取器 可以双击代码区域,可以直接修改元素代码
点击右上角的「编辑」 图标或者是点击该区域后按下快捷键CTRL+1 进行元素编辑的批量操作
(5)图片集
通过右侧的「+图片捕获器」 便可以捕获新图片
运行与调试
运行信息
用处:查看 运行结果、运行日志和变量变化
依赖包管理
组件包是活动的集合。工程会依赖某个组件包的具体一个版本。导出工程时,会包含依赖包信息。
共享与分布
版本控制
市场
二、🌟活动组件库
通用
(1)流程控制
1.多重赋值
使用说明:多个值同时赋值给多个变量,逐一为每个变量指定值
2.中断(break)
使用说明: 循环活动内部使用,中断活动,跳出循环体,执行后续活动
3.继续(continue)
使用说明:在活动所在处退出本次循环活动,并继续执行下一次循环
4.延迟
使用说明: 设定延时的时长,当延迟时间已达到再执行下一个活动
5.抛出异常
使用说明:在活动所处位置抛出一个指定异常
6.遍历循环
使用说明:按序遍历列表中的每一项值,并重复执行循环体内的活动流程,直至遍历结束
输入项:值——需要遍历的列表
输出项:当前索引——列表中的索引值
7.DoWhile
使用说明: 先完整执行一次活动内部循环体的流程,执行完成后,再进行条件判断
输入项:条件——> 执行循环的判断条件
8.While
使用说明:先判断是否满足给定的条件表达式,若满足循环条件,则执行循环体内的活动流程,直至不满足循环条件后,自动跳出循环
⭕9.引用流程
使用说明:引用同一工程下的其他流程(一个活动支持引用一个流程,功能类似于函数调用)
10.重试作用域
使用说明:将多个活动放置作用域内,如遇异常时,根据设置的重试次数重复执行多次
输入项:重试次数——>可重复执行的最大次数
输出项:当前重试次数——>出错时实际已经重试的次数
11.触发器作用域
使用说明:各种事件监控和触发的作用域活动,与触发器相关活动组合使用
输入项:计划模式——指定在触发触发器时如何执行操作
- 顺序:检测到多次触发动作时,会先完整执行一次的【操作】区域内流程,然后再按触发器被触发的次数继续执行【操作】区域内流程
- 并发:检测到多次触发动作时,各次触发的【操作】区域内流程会同时开始执行
- 单次执行:无论检测到几次触发动作,都只会执行一次【操作】区域内流程
⭕12.输出到日志
使用说明:将指定内容输出到运行日志,以查看运行结果。或将内容输出到日志以外的其他地方,如数据库、文件等
输入项:
① 文本编写器——将文本写入日志以外的其他地方,如数据库,文件等。传入参数需要以变量表示。若不填写,则只将内容输出到运行日志
②日志级别——调试、日志、警告、错误、致命
③内容——要输出的指定内容
④异常信息——抛出指定的异常信息
13.Try-Catch异常处理
使用说明:执行【Try】模块活动。捕获到异常,执行【Catch】中的活动。
- 【Try】模块——可能引发异常的流程
- 【Catch】模块——将处理异常的流程
- 【Finally】模块——无论是否出现异常,均会执行的流程
⭕14.赋值
使用说明:输入要赋予给变量的值,在输出中要赋值变量,可供后续流程调用
输入项:值——输入要赋予给变量的值
输出项:设置要赋予值的变量,可供后续流程调用
15.If判断
使用说明:判断指定条件的真假
- 真,则执行【Then】中的流程
- 假,则执行【Else】中的流程
输入项:条件——用来进行判断的条件表达式
16.并行
使用说明: 活动存在多个子活动并行时,在子活动1进入等待状态时,流程依次执行子活动2及以后子活动。即并行地异步执行子活动
输入项:完成条件——判断完成的条件
- 真,流程有一个子活动执行完成,则整个并行活动执行完成
- 假,流程执行完所有子活动,则整个并行活动执行完成
17.时序图
使用说明: 在内编辑或放置活动组件,然后运行
18.终止工作流
使用说明: 直接结束当前正在执行的任务,可自定义终止原因/异常(可配合Try-Catch异常处理活动使用)
输入项:
①原因——终止原因,可直接输出到运行日志中
②异常——异常信息,可配合Try-Catch异常处理活动使用
19.Switch
使用说明: 根据给定的表达式,执行对应Cases值中的流程。若无对应Cases值,则执行Default中的流程
输入项:
①参数类型
②表达式——>用来进行判断的条件
20.遍历循环
使用说明: 根据序列中的每个值,并行执行序列中的活动,当循环体中存在需要等待的活动时,流程会立即启动下一次循环,直至等待状态结束,或者遍历结束
当流程中不存在等待活动时:
当流程中存在等待活动时:
(2)流程图
注意:首个活动组件必须连接流程图中的【开始】
(3)状态机
1.状态机
放置一组状态流(状态流、最终状态流——必要组件,放置于所有状态流最后,来结束状态机)
2.状态流
使用说明: 构建状态机中某一个特定的状态(包括Entry和Exit两个模块)。流程从【开始】进入初始状态流,再通过跳转条件中的条件表达式判断进入哪一个状态流
注意:状态流与状态流之间必须有跳转条件,否则流程无法正常流转
应用(软件)
(1)数据库
(2)邮件
注意:密码为邮件账号的授权码
1.exchange 删除、获取、移动、发送
2.imap 获取、移动
Internet Mail Access Protocol
原理:用户通过远程服务器来访问和管理自己的电子邮件
- QQ邮箱的服务器主机为:imap.qq.com
- 网易邮箱服务器主机为:imap.163.com
- 993 端口: IMAP over SSL(IMAPS)的标准端口。这意味着通信通过加密的SSL/TLS连接进行,确保数据在传输过程中的安全性和完整性。大多数现代的邮件客户端和服务器都支持使用993端口进行安全的IMAP连接。
- 143 端口: IMAP 的标准端口。通信在此端口上是明文的,没有加密保护。虽然不安全,但仍然在某些场景下使用,例如在受信任的内部网络或需要更高性能而不需要加密的情况下。
3.pop3 获取
Post Office Protocol version 3
原理:单向操作协议,意味着它仅允许客户端从服务器上下载邮件
端口号:
- 110(未加密的普通文本连接)
- 995(加密连接,通常是通过SSL或TLS进行加密,称为POP3S)
4.smtp 发送
Simple Mail Transfer Protocol
原理:发送者通过与邮件服务器建立连接并发送命令来发送电子邮件
端口号:
- 标准端口号 25
- 加密的SMTP连接 465(SMTPS)
5.outlook 删除、获取、移动、回复、发送
通过Outlook客户端关联的邮箱账户进行操作邮件列表
(3)PDF
(4)Word
(5)Excel
界面自动化
🌟元素操作
操作
🌟抓取表格——>抓取文字和链接等信息
若点击提取相关数据,则会继续提取相关的元素
获取
获取元素选择——>获取该元素的所有选项值并将结果返回给输出项中元素选择值变量中
界面 鼠标 键盘 自动化
与 鼠标键盘 中鼠标、键盘 操作的区别是 有元素选择器,即发送文本是有目标的
设置
设置元素属性——为目标元素追加上 属性名和属性值