- Información general
- Criptografía
- Base de datos
- Java
- Python
- WebAPI
Detección de lenguaje WebAPI
The following examples explain how to use activities such as HTTP Request or Deserialize Json for calling a public API, extracting information, and displaying the results. You can find these activities in the UiPath.WebAPI.Activities package.
Hay tres flujos de trabajo para detectar idiomas en textos mediante la API de detección de idiomas. El primer flujo de trabajo crea un diccionario de idiomas, el segundo detecta el idioma en un solo texto y el tercero detecta los idiomas en varios textos.
Creación del diccionario de idiomas
El flujo de trabajo crea un diccionario de idiomas a partir de un archivo CSV que contiene códigos y nombres de idioma. Este flujo de trabajo se invoca en los otros dos flujos de trabajo.
Así es como se puede construir el proceso de automatización:
- Abre Studio y crea un nuevo Proceso.
- Descarga el archivo con el proyecto en este ejemplo y copia el archivo languages.csv a tu carpeta de proyecto.
-
Arrastra un contenedor Secuencia al Diseñador de flujo de trabajo.
-
Cree la siguiente variable:
Nombre de la variable
Tipo de variable
Valor predeterminado
LanguagesDT
TablaDeDatos
-
-
Añade una actividad Leer CSV al interior del contenedor Secuencia.
- Añada la expresión
"languages.csv"
en el campo Ruta del archivo. - En el panel Propiedades , añade la variable
LanguagesDT
en el campo TablaDeDatos .
- Añada la expresión
-
Add an Assign activity after the Read CSV activity.
- Añade la expresión
out_LanguagesDictionary
al campo Para. -
Agrega la expresión
LanguagesDT.AsEnumerable.ToDictionary(of string, string)(function(row) row("Code").ToString, function(row) row("Language").ToString)
en el campo Valor.
- Añade la expresión
- Ejecuta el proceso para crear el diccionario.
Detectar el idioma en un solo texto
Así es como se puede construir el proceso de automatización:
- Abre Studio y crea un nuevo Proceso.
-
Arrastra un contenedor Secuencia al Diseñador de flujo de trabajo.
-
Crea las siguientes variables:
Nombre de la variable
Tipo de variable
Valor predeterminado
APIKey
Cadena
Text
Cadena
Result
Cadena
StatusCode
Int32
LanguagesDictionary
Dictionary<String, String>
LanguageCode
Cadena
Reliable
Booleano
Confidence
Double
LanguageName
Cadena
-
-
Añade una actividad Asignar dentro del contenedor Secuencia.
- Añade la variable
APIKey
en el campo Para. - Agrega la expresión
"demo"
en el campo Valor.
- Añade la variable
-
Add an Assign activity after the Assign activity.
- Añade la variable
Text
en el campo Para. - Agrega la expresión
"Hello. This is a sample test."
en el campo Valor.
- Añade la variable
-
Add an HTTP Request activity after the Assign activity.
- Configura el asistente añadiendo la dirección del punto de conexión, el método de solicitud, la forma de la respuesta de Aceptary el método de autenticación .
- En el panel Propiedades , añade el valor
application/json
en el campo FormatoDelCuerpo . NOTA: el flujo de trabajo muestra application / xml. - Agrega la variable
Result
en el campo Resultado. - Añade la variable
StatusCode
en el campo CódigoDeEstado.
- Configura el asistente añadiendo la dirección del punto de conexión, el método de solicitud, la forma de la respuesta de Aceptary el método de autenticación .
-
Add an If activity after the HTTP Request activity.
- Añada la expresión
StatusCode = 200
en el campo Condición.
- Añada la expresión
-
Añade una actividad Secuencia dentro del campo Entonces de la actividad Si.
-
Crea las siguientes variables:
Nombre de la variable
Tipo de variable
Valor predeterminado
ResultJSON
JObject
-
-
Añade una actividad Invocar archivo de flujo de trabajo dentro del contenedor Secuencia .
- Añade la expresión
"GetLanguagesDictionary.xaml"
en el campo Ruta de flujo de trabajo. -
Selecciona el botón Editar argumentos y añade el siguiente argumento:
Nombre de Argumento
Dirección de argumento
Tipo de argumento
Valor predeterminado
out_LanguagesDictionary
Salida
Dictionary<String, String>
LanguagesDictionary
- Añade la expresión
-
Add a Deserialize JSON activity after the Invoke Workflow File activity.
- Añade la variable
Result
en el campo Cadena Json .
- Añade la variable
-
Add an Assign activity after the Deserialize JSON activity.
- Añade la variable
LanguageCode
en el campo Para. - Agrega la expresión
ResultJSON("data")("detections")(0)("language").ToString
en el campo Valor.
- Añade la variable
-
Add an Assign activity after the previous Assign activity.
- Añade la variable
LanguageName
en el campo Para. - Agrega la expresión
LanguagesDictionary(LanguageCode)
en el campo Valor.
- Añade la variable
-
Add another Assign activity after the previous Assign activity.
- Añade la variable
Reliable
en el campo Para. - Agrega la expresión
CBool(ResultJSON("data")("detections")(0)("isReliable").ToString)
en el campo Valor.
- Añade la variable
-
Add an Assign activity after the previous Assign activity.
- Añade la variable
Confidence
en el campo Para. - Agrega la expresión
CDbl(ResultJSON("data")("detections")(0)("confidence").ToString)
en el campo Valor.
- Añade la variable
-
Add a Log Message after the Assign activity.
- Agrega la expresión
"Detection for the text:" + vbCrLf + " Language is " + LanguageName+ vbCrLf +" Reliable detection: " + Reliable.ToString + vbCrLf + " Confidence level: " + Confidence.ToString
en el campo Mensaje.
- Agrega la expresión
-
Añade una actividad Mensaje de registro dentro del campo Si no de la actividad Si.
- Selecciona la opción Aviso de la lista desplegable Nivel.
- Agrega la expresión
"HTTP Request was not successful. Code: " + StatusCode.ToString
en el campo Mensaje.
-
Add a Log Message activity after the previous Log Message activity.
- Selecciona la opción Aviso de la lista desplegable Nivel.
-
Agrega la expresión
"HTTP Request was not successful. Result: " + Result
en el campo Mensaje.
- Ejecuta el proceso para detectar y registrar el idioma utilizado en el texto.
Detectar los idiomas en un lote de textos
Así es como se puede construir el proceso de automatización:
- Abre Studio y crea un nuevo Proceso.
-
Arrastra un contenedor Secuencia al Diseñador de flujo de trabajo.
-
Crea las siguientes variables:
Nombre de la variable
Tipo de variable
Valor predeterminado
APIKey
Cadena
Texts
Cadena []
Result
Cadena
StatusCode
Int32
HTTPRequestBodyJSON
Cadena
-
-
Añade una actividad Asignar dentro del contenedor de secuencia.
- Añade la variable
APIKey
en el campo Para. - Añade el valor
"demo"
en el campo Valor.
- Añade la variable
-
Add another Assign activity after the previous one.
- Añade la variable
Texts
en el campo Para. - Añade el valor
{"Hello world.", "Buenos dias, señor.", "Guten Tag.", "Buna ziua, tuturor."}
en el campo Valor.
- Añade la variable
-
Add a new Assign activity after the previous Assign activity.
- Añade la variable
HTTPRequestBodyJSON
en el campo Para. - Añade el valor
Newtonsoft.Json.JsonConvert.SerializeObject(new with{ .q = Texts })
en el campo Valor.
- Añade la variable
-
Add an HTTP Request activity after the Assign activity.
- Configura el asistente añadiendo la dirección de Puto de finalización, el Método de solicitud, el formulario de la Respuesta de aceptación y el método de Autenticación.
- En el panel de propiedades, añade la variable
HTTPRequestBodyJSON
en el campo Cuerpo. - Añade el valor
application/json
en el campo FormatoDelCuerpo . - Agrega la variable
Result
en el campo Resultado. - Añade la variable
StatusCode
en el campo CódigoDeEstado.
- Configura el asistente añadiendo la dirección de Puto de finalización, el Método de solicitud, el formulario de la Respuesta de aceptación y el método de Autenticación.
-
Add an If activity after the HTTP Request activity.
- Añada la expresión
StatusCode = 200
en el campo Condición.
- Añada la expresión
-
Añade una actividad Secuencia dentro del campo Entonces de la actividad Si.
-
Crea las siguientes variables:
Nombre de la variable
Tipo de variable
Valor predeterminado
ResultJSON
JObject
LanguagesDictionary
System.Collections.Generic.Dictionary<System.String, System.String>
LanguageCode
Cadena
LanguageName
Cadena
Reliable
Booleano
Confidence
Double
index
Int32
0
-
-
Añade una actividad Invocar archivo de flujo de trabajo dentro del contenedor Secuencia .
- Añade la expresión
"GetLanguagesDictionary.xaml"
en el campo Ruta de flujo de trabajo. -
Selecciona el botón Editar argumentos y añade el siguiente argumento:
Nombre de Argumento
Dirección de argumento
Tipo de argumento
Valor predeterminado
out_LanguagesDictionary
Salida
Dictionary<String, String>
LanguagesDictionary
- Añade la expresión
-
Add a Deserialize JSON activity after the Invoke Workflow File activity.
- Añade la variable
Result
en el campo Cadena Json .
- Añade la variable
-
Add a For Each activity after the Deserialize JSON activity.
- Añade la expresión
ResultJSON("data")("detections")
en el campo Valores.
- Añade la expresión
-
Coloca una actividad Asignar dentro del Cuerpo de la actividad Para cada.
- Añade la variable
LanguageCode
en el campo Para. - Agrega la expresión
item(0)("language").ToString
en el campo Valor.
- Añade la variable
-
Add an Assign activity after the previous Assign activity.
- Añade la variable
LanguageName
en el campo Para. - Agrega la expresión
LanguagesDictionary(LanguageCode)
en el campo Valor.
- Añade la variable
-
Add another Assign activity after the previous Assign activity.
- Añade la variable
Reliable
en el campo Para. - Agrega la expresión
CBool(item(0)("isReliable").ToString)
en el campo Valor.
- Añade la variable
-
Add an Assign activity after the previous Assign activity.
- Añade la variable
Confidence
en el campo Para. - Agrega la expresión
CDbl(item(0)("confidence").ToString)
en el campo Valor.
- Añade la variable
-
Add a Log Message after the Assign activity.
- Agrega la expresión
"Detection for the text #"+index.ToString +":" + vbCrLf + " Language is " + LanguageName+ vbCrLf +" Reliable detection: " + Reliable.ToString + vbCrLf + " Confidence level: " + Confidence.ToString
en el campo Mensaje.
- Agrega la expresión
-
Añade una actividad Mensaje de registro dentro del campo Si no de la actividad Si.
- Selecciona la opción Aviso de la lista desplegable Nivel.
- Agrega la expresión
"HTTP Request was not successful. Code: " + StatusCode.ToString
en el campo Mensaje.
-
Add a Log Message activity after the previous Log Message activity.
- Selecciona la opción Aviso de la lista desplegable Nivel.
-
Agrega la expresión
"HTTP Request was not successful. Result: " + Result
en el campo Mensaje.
- Ejecuta el proceso para detectar y registrar los idiomas utilizados en el texto
Aquí puede descargar un ejemplo.