activities
latest
false
重要 :
请注意此内容已使用机器翻译进行了部分本地化。
UiPath logo, featuring letters U and I in white
开发者活动
Last updated 2024年10月22日

WebAPI 语言检测

以下示例说明了如何使用“HTTP 请求”“反序列化 JSON”等活动来调用公共 API、提取信息以及显示结果。您可以在“UiPath.WebAPI.Activities”包中找到这些活动。

使用语言检测 API 检测文本中的语言可通过三个工作流进行。 第一个工作流创建语言字典,第二个工作流检测单个文本中的语言,第三个工作流检测多个文本中的语言。

创建语言字典

工作流从包含语言代码和名称的 CSV 文件创建语言字典。 此工作流在其他两个工作流中调用。

此自动化流程的构建方法如下:

  1. 打开 Studio ,创建一个新“流程”
  2. 下载此示例中的项目存档,并将文件 languages.csv 复制到您的项目文件夹。
  3. 工作流设计器中拖动“序列”容器。

    • 创建以下变量:

      变量名称

      变量类型

      默认值

      LanguagesDT

      数据表

       
  4. 读取 CSV 活动添加至序列容器。

    • 文件路径字段中添加表达式 "languages.csv"
    • 在“ 属性 ”面板的“ 数据表 ”字段中添加变量 LanguagesDT
  5. 将“分配”活动添加至“读取 CSV”活动之后。

    • 目标字段中添加表达式 out_LanguagesDictionary
    • 在“值”字段中添加表达式“LanguagesDT.AsEnumerable.ToDictionary(of string, string)(function(row) row("Code").ToString, function(row) row("Language").ToString)”。


  6. 运行该流程以创建字典。
检测单个文本中的语言

此自动化流程的构建方法如下:

  1. 打开 Studio ,创建一个新“流程”
  2. 工作流设计器中拖动“序列”容器。

    • 创建以下变量:

      变量名称

      变量类型

      默认值

      APIKey

      字符串

       

      Text

      字符串

       

      Result

      字符串

       

      StatusCode

      Int32

       

      LanguagesDictionary

      Dictionary<String, String>

       

      LanguageCode

      字符串

       

      Reliable

      布尔值

       

      Confidence

      Double

       

      LanguageName

      字符串

       
  3. 分配活动添加至序列容器。

    • 在“收件人”字段中添加“APIKey”变量。
    • 在“值”字段中添加表达式“"demo"”。
  4. 将“分配”活动添加到“分配”活动之后。

    • 在“收件人”字段中添加“Text”变量。
    • 在“值”字段中添加表达式“"Hello. This is a sample test."”。
  5. 将“HTTP 请求”活动添加到“分配”活动之后。

    • 通过添加 端点 地址、 请求方法接受响应的形式和 身份验证 方法来配置向导。


    • 在“ 属性 ” 面板的“ 正文格式 ” 字段中添加值 application/json 。 注意:工作流显示 application/xml。
    • 在“结果”字段中添加 Result 变量。
    • 状态码字段中添加 StatusCode 变量。
  6. 在“HTTP 请求”活动之后添加“IF 条件”活动。

    • 在“条件”字段中添加表达式“StatusCode = 200”。
  7. IF 条件活动的 Then 字段中添加序列活动。

    • 创建以下变量:

      变量名称

      变量类型

      默认值

      ResultJSON

      JObject

       
  8. 在“ 序列 ”容器中添加“调用工作流文件”活动。

    • 工作流路径字段中添加表达式 "GetLanguagesDictionary.xaml"
    • 选择编辑参数按钮并添加以下参数:

      参数名称

      参数方向

      参数类型

      默认值

      out_LanguagesDictionary

      输出

      Dictionary<String, String>

      LanguagesDictionary



  9. 将“反序列化 JSON”活动添加到“调用工作流文件”活动之后。

    • 在“ Json 字符串 ”字段中添加变量 Result
  10. 将“分配”活动添加到“反序列化 JSON”活动之后。

    • 在“收件人”字段中添加“LanguageCode”变量。
    • 在“值”字段中添加表达式“ResultJSON("data")("detections")(0)("language").ToString”。
  11. 将“分配”活动添加到上一个“分配”活动之后。

    • 在“收件人”字段中添加“LanguageName”变量。
    • 在“值”字段中添加表达式“LanguagesDictionary(LanguageCode)”。
  12. 将另一个“分配”活动添加到上一个“分配”活动之后。

    • 在“收件人”字段中添加“Reliable”变量。
    • 在“值”字段中添加表达式“CBool(ResultJSON("data")("detections")(0)("isReliable").ToString)”。
  13. 将“分配”活动添加到上一个“分配”活动之后。

    • 在“收件人”字段中添加“Confidence”变量。
    • 在“值”字段中添加表达式“CDbl(ResultJSON("data")("detections")(0)("confidence").ToString)”。
  14. 在“分配”活动后添加“日志消息”。

    • 在“行”字段中添加表达式“"Detection for the text:" + vbCrLf + " Language is " + LanguageName+ vbCrLf +" Reliable detection: " + Reliable.ToString + vbCrLf + " Confidence level: " + Confidence.ToString”。
  15. 在“ If ” 活动的“ Else ” 字段中添加一个“ 日志消息 ” 活动。

    • 级别下拉列表中选择警告选项。
    • 在“行”字段中添加表达式“"HTTP Request was not successful. Code: " + StatusCode.ToString”。
  16. 将“日志消息”活动拖动至上一个“日志消息”活动之后。

    • 级别下拉列表中选择警告选项。
    • 在“行”字段中添加表达式“"HTTP Request was not successful. Result: " + Result”。


  17. 运行流程以检测并记录文本中使用的语言。
检测一批文本中的语言

此自动化流程的构建方法如下:

  1. 打开 Studio ,创建一个新“流程”
  2. 工作流设计器中拖动“序列”容器。

    • 创建以下变量:

      变量名称

      变量类型

      默认值

      APIKey

      字符串

       

      Texts

      字符串[]

       

      Result

      字符串

       

      StatusCode

      Int32

       

      HTTPRequestBodyJSON

      字符串

       
  3. 分配活动添加至“序列”容器。

    • 在“收件人”字段中添加“APIKey”变量。
    • 在“值”字段中添加值“"demo"”。
  4. 将另一个“分配”活动添加到上一个“分配”活动之后。

    • 在“收件人”字段中添加“Texts”变量。
    • 在“值”字段中添加值“{"Hello world.", "Buenos dias, señor.", "Guten Tag.", "Buna ziua, tuturor."}”。
  5. 将新的“分配”活动添加到上一个“分配”活动之后。

    • 在“收件人”字段中添加“HTTPRequestBodyJSON”变量。
    • 在“值”字段中添加值“Newtonsoft.Json.JsonConvert.SerializeObject(new with{ .q = Texts })”。
  6. 将“HTTP 请求”活动添加到“分配”活动之后。

    • 通过添加 端点 地址、 请求方法接受响应形式和 身份验证 方法来配置向导。


    • 属性面板中,向正文字段添加 HTTPRequestBodyJSON 变量。
    • 在“ 正文格式 ” 字段中添加值 application/json
    • 在“结果”字段中添加 Result 变量。
    • 状态码字段中添加 StatusCode 变量。
  7. 在“HTTP 请求”活动之后添加“IF 条件”活动。

    • 在“条件”字段中添加表达式“StatusCode = 200”。
  8. IF 条件活动的 Then 字段中添加序列活动。

    • 创建以下变量:

      变量名称

      变量类型

      默认值

      ResultJSON

      JObject

       

      LanguagesDictionary

      System.Collections.Generic.Dictionary<System.String, System.String>

       

      LanguageCode

      字符串

       

      LanguageName

      字符串

       

      Reliable

      布尔值

       

      Confidence

      Double

       

      index

      Int32

      0

  9. 在“ 序列 ”容器中添加“调用工作流文件”活动。

    • 工作流路径字段中添加表达式 "GetLanguagesDictionary.xaml"
    • 选择编辑参数按钮并添加以下参数:

      参数名称

      参数方向

      参数类型

      默认值

      out_LanguagesDictionary

      输出

      Dictionary<String, String>

      LanguagesDictionary



  10. 将“反序列化 JSON”活动添加到“调用工作流文件”活动之后。

    • 在“ Json 字符串 ”字段中添加变量 Result
  11. 将“遍历循环”活动添加到“反序列化 JSON”活动之后。

    • 在“值”字段中添加表达式“ResultJSON("data")("detections")”。
  12. 遍历循环活动的正文中添加分配活动。

    • 在“收件人”字段中添加“LanguageCode”变量。
    • 在“值”字段中添加表达式“item(0)("language").ToString”。
  13. 将“分配”活动添加到上一个“分配”活动之后。

    • 在“收件人”字段中添加“LanguageName”变量。
    • 在“值”字段中添加表达式“LanguagesDictionary(LanguageCode)”。
  14. 将另一个“分配”活动添加到上一个“分配”活动之后。

    • 在“收件人”字段中添加“Reliable”变量。
    • 在“值”字段中添加表达式“CBool(item(0)("isReliable").ToString)”。
  15. 将“分配”活动添加到上一个“分配”活动之后。

    • 在“收件人”字段中添加“Confidence”变量。
    • 在“值”字段中添加表达式“CDbl(item(0)("confidence").ToString)”。
  16. 在“分配”活动后添加“日志消息”。

    • 在“行”字段中添加表达式“"Detection for the text #"+index.ToString +":" + vbCrLf + " Language is " + LanguageName+ vbCrLf +" Reliable detection: " + Reliable.ToString + vbCrLf + " Confidence level: " + Confidence.ToString”。
  17. 在“ If ” 活动的“ Else ” 字段中添加一个“ 日志消息 ” 活动。

    • 级别下拉列表中选择警告选项。
    • 在“行”字段中添加表达式“"HTTP Request was not successful. Code: " + StatusCode.ToString”。
  18. 将“日志消息”活动拖动至上一个“日志消息”活动之后。

    • 级别下拉列表中选择警告选项。
    • 在“行”字段中添加表达式“"HTTP Request was not successful. Result: " + Result”。


  19. 运行流程以检测并记录文本中使用的语言

您可以在此处 下载示例。

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。