业务场景:
获取某网站的验证码截图,将截图转base64之后传到百度OCR文字识别接口,获取文字识别识别结果
前期准备
添加一个webapi的包,用来发送http请求
登录百度AI开放平台,申请免费文字识别免费试用额度(自行寻找资料申请额度,可以免费申请每月1000次识别,不是重点懒得讲这一部分了)
查看帮助文档,获取api接口以及参数,发现调用该接口需要进行两步操作
文字识别官方文档传送门
1. 获取token
2. 携token调用文字识别接口
UIPATH调用接口实例
先看一个总体流程
步骤详解1 调接口获取token
调用获取token的接口,官方文档是说的用将三个参数放到url中传递,如下图链接所示
https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=Va5yQRHlA4Fq5eR3LT0vuXV4&client_secret=0rDSjzQ20XUj5itV6WRtznPQSzr5pVw2&
对应到uipath中所需要填入的就是如下:
- endpoint:“https://aip.baidubce.com/oauth/2.0/token”
- method:POST
- parameters:
返回的是一个Json字符串,在output那里接收一下
步骤详解2 解析Json字符串,获取token
返回的Json字符串不能被直接读取,需要转换成JsonObject才可以被读取
先使用DeserialzeJson活动,将字符串转换为JObject对象
再获取JObeject对象中的access_token(key)的value
步骤详解3 调接口识别图片并返回结果
因为百度ocr要求上传图片用base64格式,所以先把图片转换一下
再按官方文档的说明,填入参数并发起请求
- endpoint:“https://aip.baidubce.com/rest/2.0/ocr/v1/webimage”
- method:POST
- headers:
- parameters:
提一嘴,如果有json格式的字符串需要传递,放在body属性里面,压缩成单行的字符串,就能正常传递了
调用完了就能获取识别结果了
太懒了,懒得讲太详细,剩下的自己消化一下,累了