锚库在 uipath 中无法用于 pdf 提取

Anchor base not working in uipath for pdf extraction

我想从 PDF 发票提取某些文本和数字,其中一个是总金额。问题是总金额的 位置不断从 pdf 更改为 pdf 根据那里有多少项目。如果项目很多,则 pdf 中的总金额字段将较低,如果项目数量较少,则 pdf 中的总金额将较高。参考下图。发票中只有 2 项,因此总计字段位于较高位置。但我也有发票,发票中有 15 个项目,总计字段在页面的下方或在下一页。

那我该如何提取呢?我尝试使用 Anchor base 但它不起作用!

这是我到目前为止所做的工作:

1.) 分配一个for循环,逐一打开文件夹中的每一个pdf。

2.) 对于每个 pdf,我都分配了一个适合整页的热键到 window。

3.) 然后我用的是Anchor Base(下图f=给出的total是anchor,amount是要提取的值)

4.) 使用消息框打印值

5.) 关闭 pdf

两个可能的解决方案。

使用UiPath文档理解

您可以在社区许可证上获得一定数量的 DU 数据,然后您可以设置模板并使用锚点、令牌选择、自定义区域选择器等

读行方法

将 PDF 转换为文本。 查看提取的文本并找到可以用作锚点的 phrase/keyword。以你的例子为例,你可能会“总计:”

然后使用 Invoke Code(我将在下面的示例中使用 C#)

参数:in_text(PDF 中的文本)| out_totalAmount

代码:

var invoiceTotal = File.ReadLines(in_text).Last(e => e.StartsWith("Total: ")).Trim();
out_totalAmount = invoiceTotal.Split(new []{":"}).LastOrDefault();