屏幕特殊OCR识别
命令说明
使用特殊OCR识别屏幕指定范围,调用时需要访问互联网
命令原型
sText = OCR.ScreenSpecialOCR(objElement,objRect,sEngine,sAcessKey,sSecretKey,iTimeOut,sEngineOptionArgs,optionArgs)
命令参数
参数 | 必选 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
objElement | True | decorator | @ui"" | 对应需要操作的界面元素,当属性传递为 字符串 类型时,作为特征串查找界面元素,当属性传递为 UiElement 类型时,直接对 UiElement 对应的界面元素进行点击操作 |
objRect | True | dictionary | {"x":0,"y":0,"width":0,"height":0} | 需要进行OCR文字识别的范围,程序会在控件这个范围内进行文字识别,如果范围传递为 {"x":0,"y":0,"width":0,"height":0},则进行控件矩形区域范围内的文字识别 |
sEngine | True | enum | "baidu_webImage" | 使用的OCR引擎 |
sAcessKey | True | string | "" | OCR服务的ApiKey |
sSecretKey | True | string | "" | OCR服务的SecretKey |
iTimeOut | True | number | 10000 | 指定在SelectorNotFoundException引发异常之前等待活动运行的时间量(以毫秒为单位)。默认值为10000毫秒(10秒) |
sEngineOptionArgs | True | expression | {} | OCR的其它属性 |
bContinueOnError | False | boolean | False | 指定即使活动引发错误,自动化是否仍应继续。该字段仅支持布尔值(True,False)。默认值为False |
iDelayAfter | False | number | 300 | 执行活动后的延迟时间(以毫秒为单位)。默认时间为300毫秒 |
iDelayBefore | False | number | 200 | 活动开始执行任何操作之前的延迟时间(以毫秒为单位)。默认的时间量是200毫秒 |
bSetForeground | False | boolean | True | 进行操作之前,是否先将目标窗口激活 |
返回结果
sText,将命令运行后的结果赋值给此变量。
运行实例
/*********************************屏幕特殊OCR识别***************************************
命令原型:
sText = OCR.ScreenSpecialOCR(@ui"",{"x":0,"y":0,"width":0,"height":0},"baidu_webImage","","",10000,{},{"bContinueOnError":false,"iDelayAfter":300,"iDelayBefore":200,"bSetForeground":true})
入参:
objUiElement--识别目标。
objRect--目标识别范围。默认值:{"x":0,"y":0,"width":0,"height":0}
sEngine--OCR引擎。注:使用的OCR引擎
sAcessKey--百度OCR引擎ApiKey。注:OCR服务的ApiKey(需要注册OCR账号,创建应用获取该参数)
sSecretKey--百度OCR引擎SecretKey。注:OCR服务的SecretKey(需要注册OCR账号,创建应用获取该参数)
iTimeOut--超时时间。注:指定在SelectorNotFoundException引发异常之前等待活动运行的时间量(以毫秒为单位)。默认值为10000毫秒(10秒)
sEngineOptionArgs--其他属性。注:OCR的其它属性
optionArgs--可选参数(包括:错误继续执行、执行后延时、执行前延时、激活窗口、光标位置、横坐标偏移、纵坐标偏移、辅助按键、操作类型).Type:Dict
出参:
sText--函数调用的输出保存到的变量。
注意事项:
1.该命令是调用外部百度OCR接口,需要提前创建好百度OCR账号以及对应应用,获取应用对应密钥(Access Key和Secret Key)。
2.运行该命令时需要能够连接外网。
********************************************************************************/
Dim sText = ""
sText = OCR.ScreenSpecialOCR(@ui"文本<span>_ScreenSpecialOCR",{"x":0,"y":0,"width":0,"height":0},"baidu_webImage","P10qsjDcuoN5ZU7dnSHmXzGh","Fm8whYrNnXtKkSvqVPUYL573XfNbxlmO",10000,{},{"bContinueOnError":false,"iDelayAfter":300,"iDelayBefore":200,"bSetForeground":true})
TracePrint(sText)
可视化样例
![](https://docs-res.laiye.com/production/docs-res/rpa-command-manual/zh/v6.0.0/OCR_图片/OCR_ScreenSpecialOCR.png)