🐋作者简介:博主是一位.Net开发者,同时也是RPA和低代码平台的践行者。
🦀专栏简介:UiPath在传统的RPA(Robotic process automation)的基础上,增加了See(AI通过计算机视觉阅读用户的计算机屏幕)和Think(通过机器学习来发现平台能够为用户构建什么自动化流程)从而不断帮助用户自动化构建流程,而不仅仅是用户自主发现,自主构建。并且在构建的过程当中,做到了Low-code甚至是No-code的程度,让每一位员工都可以自主使用。
🐶座右铭:总有一天你所坚持的会反过来拥抱你。
🌈写在前面:PDF 是一种广泛使用的文档共享格式。通过本博文,我们将了解 PDF 文档的类型以及从 PDF 文档中提取数据时可以使用的方法。我们还将研究处理不稳定选取器时使用的锚点基准功能。
👉本文关键字:RPA、UiPath、Low-code、No-code、PDF自动化、提取数据、锚点基准功能、.Net
1️⃣ 背景
♈ 什么是RPA
RPA(Robotic process automation) 代表机器人过程自动化。
它是一种软件程序,可在与计算机应用程序交互时模仿人类行为并实现重复的、基于规则的流程的自动化。
♉ 什么是UiPath
UiPath 是一种机器人流程自动化工具,用于自动化枯燥和重复的任务。它由罗马尼亚企业家 Daniel Dines 和 Marius Trica 于 2005 年创立。它还消除了自动化无聊任务的人工干预,并为所有活动提供了拖放功能,它是最简单的 RPA 工具。
♊ 为什么使用UiPath
UiPath在传统的RPA的基础上,增加了See(AI通过计算机视觉阅读用户的计算机屏幕)和Think(通过机器学习来发现平台能够为用户构建什么自动化流程)从而不断帮助用户自动化构建流程,而不仅仅是用户自主发现,自主构建。并且在构建的过程当中,做到了Low-code甚至是No-code的程度,让每一位员工都可以自主使用。
♋ 为什么要用PDF自动化
- 获取原生PDF中某一部分的获取文本写入到另一个文件中(比如研究员可以批量处理包含某些关键字的文本文档而不是靠人工肉眼去筛选);
- 从扫描中得到的PDF获取文本和图像(比如由扫描机获取的发票,财务人员可以运行RPA批量处理这些电子发票);
- 精准的从获取PDF某个位置的文本并批量处理这些PDF,解放双手的同时降低了错误率;
原生PDF:由电子文本转换而来的PDF,比如从Word转换成的PDF扫描PDF:由扫描图像组成的PDF,比如扫描件中的发票
2️⃣ 概述
♈ 环境
- UiPath Studio Community 2022.4.3
- Windows 10
- .Net
♉ 摘要
PDF 是一种广泛使用的文档共享格式。在本课程中,我们将了解 PDF 文档的类型以及从 PDF 文档中提取数据时可以使用的方法。我们还将研究处理不稳定选取器时使用的锚点基准功能。
♊ 您将学到的内容
- 安装 UiPath PDF 活动包;
- 使用读取 PDF 文本活动、使用OCR 读取 PDF活动和屏幕抓取向导,从 PDF 中提取大文本段;
- 从 PDF 文档中提取单段信息;
- 使用选取器从具有相同布局的多个文件中提取可变值;
- 使用锚点基准活动从一系列具有相同结构的 PDF 文件中提取可变值。
3️⃣ PDF自动化
♋ 从 PDF 提取单个数据段
⭐ 背景
以一家中型公司为例,它面临着从一个月内生成的所有发票中提取特定数据的艰巨任务。PDF文件中所需的数据是信用额、到期余额和发票号。要手动提取此数据,将需要大量工时,但我们可以自动化此过程。让我们看看PDF自动化后,从PDF文件中提取特定数据是多么容易。
发票如下图,我们要获取总额。
⭐ 获取文本活动——Get Text Activity
对于普通 PDF 来说,有几个获取数据的选项,第一个是众所周知的获取文本操作。现在,此操作将只从这一特定文件中获取该特定文本元素的值。如下图,
Step1
Step2
Step3
Step4
结果
⭐ 录制器
获取文本也可以在录制器中访问,就在这里。只需指向您感兴趣的元素,UiPath 就会为您生成获取文本操作及其输出变量,无需其他操作,我们将在消息框中显示它。
Step1
Step2
Step3
Step4
Step5
录制器获得的结果与Get Text 活动一致,再此不过多赘述。
⭐ 从多个文件中获取
但是,假设您实际上想要从一系列类似的 PDF 发票中提取总值,而不是仅仅从一个文件中提取,应该怎么办?像大多数用户界面交互一样,获取文本操作使用选取器来识别正确的元素并获取其值。因此,正如您可能已经猜到的,我们需要对其进行一些调整,以扩展其作用域。
自动执行此操作的方法是使用修复功能。因为我们关闭了第一个 PDF 文件,所以选取器编辑器以红色显示验证,这意味着选取器无效,如下图。
出现如下界面,
但是,我们可以直接单击修复并指向另一个类似的元素,该元素也应该与当前选取器匹配,并且 UiPath 将尝试为您修复选取器,如下图。
在本例中,它是有效的,但由于情况并非总是如此,我们还可以手动修改它,看看具体结果如何。但是,这里要提醒一下:我们将不会讨论选取器的一般方面,而只是解释这个具体的示例。但我强烈建议您观看“选取器”视频,里面详细介绍了它们如何工作,如何编辑和调试它们。它们是用户界面自动化的核心部分,因而更好地理解它们会在其他情况下也有用。
因此,我们将取消这个操作,不保存更改,然后再次打开选取器。这一次两个 PDF 文件都打开了,并且初始的选取器是有效的。我们将选择在用户界面探测器中打开它,以便获得更好的视图,如下图。
选中的容器是实际组成选取器的容器,因此,我们将重点讨论这些容器。
重新选择文本,
此时用户界面探测器改变,如下图,
我们还将删除 Title 参数以使用其他文件,方法是单击 Explorer 中的顶层选取器并取消选中右侧的标题,如下图。
最后一个元素存在实际值,所以我们需要删除它,使它也适用于其他值,如下图。
通过反复试验,我们发现最好对此项使用更独特的行名称属性。然后,我们只需单击保存,通过单击验证来验证选择器,然后单击确定。现在,它对这两个文件都有效。它从这张发票和另一张发票中都提取到了正确的值。
4️⃣ 参考资料
PDF Activities Pack
Read PDF Text
Read PDF with OCR
Anchor Base
⭐写在结尾:文章中出现的任何错误请大家批评指出,一定及时修改。
希望写在这里的小伙伴能给个三连支持!