在某些情况下,某些应用程序与正常抓取或 UI 自动化技术不兼容。使用 UiPath Studio 中的 OCR 活动扫描机器的整个屏幕,查找显示的所有字符。这使用户能够根据屏幕上可以看到的内容创建自动化,从而简化了虚拟机环境中的自动化。
Citrix 和其他远程桌面实用程序通常是基于 OCR 活动的目标,因为它们只向用户发送桌面图像,这意味着无法找到正常的 UI 选择器。
注意:
创建自动化的最佳实践是使用记录向导创建项目,自动生成选择器,然后调整活动以最适合您的需要。
Double Click OCR Text, Click OCR Text 和 Hover OCR Text 使用OCR扫描机器屏幕上的文本,并执行与其相关的操作。
如果图形元素改变,但文本不改变,使用文本识别创建的自动化通常仍然有效。这些是在虚拟机环境中自动化基本动作的非常有用的活动。
作为输入,这些活动接收目标,目标可以是字符串变量、区域变量、UiElement 变量或选择器,它们指示必须执行操作的坐标。
还可以通过 Indicate on Screen 功能自动生成目标,该功能试图识别指定区域中的 UI 元素,并为其生成选择器。如果这对您不起作用,则可能需要手动干预。
Get OCR Text 使用OCR屏幕抓取方法从指示的UI元素中提取字符串及其信息。在执行屏幕抓取时,还可以与容器一起自动生成此活动。
默认情况下,使用 Google OCR 引擎,但是您可以轻松地用 ABBYY 或 Microsoft 引擎。正如 这里 所解释的,这些 OCR 引擎之间有一些不同之处,它们适合不同的情况。
作为输入,此活动接收一个目标,该目标可以是区域变量、UiElement 变量或选择器,可以帮助您识别要自动化的内容以及必须执行的操作。
还可以通过使用 Indicate on Screen功能自动生成目标,该功能试图标识指定区域中的 UI 元素,并为它们生成选择器。
如果这不适用于您,则可能需要手动干预。此活动返回一个字符串变量,其中包含 UI 元素中的文本,以及一个 Textinfo 变量,该变量包含所有找到的单词的屏幕坐标。
Find OCR Text Position 在 UI 元素中搜索给定的字符串,并返回包含所述字符串的 UIElement 变量。此活动对于定位相对于屏幕上文本的UI元素非常有用。
作为输入,此活动接收一个包含要搜索的文本的字符串和一个目标(可以是区域变量、uiElement变量或选择器),这些字符串可以帮助您识别要自动化的内容以及必须执行的操作。
还可以通过使用 Indicate on Screen功能自动生成目标,该功能试图识别指定区域中的UI元素,并为其生成选择器。如果这对您不起作用,则可能需要手动干预。
此活动返回一个 UiElement 变量,该变量包含找到文本的位置。
OCR Text Exists 使用 OCR 技术检查是否在给定的 UI 元素中找到文本,如果文本存在,则返回一个布尔变量,否则为 false。
此活动在所有类型的基于文本的自动化中都很有用,因为它使您能够根据给定的字符串是否显示,或者通过将它用作 Retry Scope活动中的条件,在循环中执行某些操作来做出决策。
作为输入,此活动接收一个包含要搜索的文本的字符串和一个目标(可以是区域变量、uiElement变量或选择器),这些字符串可以帮助您识别要自动化的内容以及必须执行的操作。
还可以通过使用 Indicate on Screen 功能自动生成目标,该功能试图标识指定区域中的UI元素,并为它们生成选择器。
如果这不适用于您,则可能需要手动干预。此活动返回一个布尔变量,该变量声明是否找到了文本。
OCR 引擎
如 Google OCR、Google CloudOCR、Microsoft CloudOCR 和 ABBYY Cloud OCR也可以作为单独的活动使用。
这些活动通过使用不同的 OCR 引擎从提供的图像中提取字符串及其位置。这些活动可用于其他OCR 活动(Click OCR Text, Hover OCR Text, Double Click OCR Text, Get OCR Text, Find OCR Text Position)
作为输入,这些活动接收一个包含要扫描的图像文件的图像变量。作为输出,这些活动返回一个i枚举变量(IEnumerable<KeyValuePair<Rectangle,String>),其中包含提取的文本及其屏幕上的坐标,以及一个包含提取的文本的字符串变量。
返回目录
UiPath 常见问题及解决办法汇总
更多 UiPath 相关的资讯,请关注公众号:流程自动化机器人教程
由于简书禁止直接在文章中插入公众号二维码,请点击 这里 了解添加该公众号的细节。