- Visão geral
- Criptografia
- Banco de Dados
- Java
- Python
- WebAPI
Detecção de idiomas da 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.
Existem três fluxos de trabalho para detectar idiomas em textos usando a API de detecção de idioma. O primeiro fluxo de trabalho cria um dicionário de idiomas, o segundo detecta o idioma em um único texto e o terceiro detecta idiomas em vários textos.
Criando o dicionário de idiomas
O fluxo de trabalho cria um dicionário de idiomas a partir de um arquivo CSV que contém códigos e nomes de idiomas. Esse fluxo de trabalho é chamado nos dois outros fluxos de trabalho.
É assim que um processo de automação pode ser construído:
- Abra o Studio e crie um Processo.
- Faça download do arquivo com o projeto neste exemplo e copie o arquivo languages.csv para sua pasta de projeto.
-
Arraste um contêiner Sequência para o Designer de Fluxo de Trabalho.
-
Crie a seguinte variável:
Nome da variável
Tipo de Variável
Valor Padrão
LanguagesDT
TabelaDeDados
-
-
Adicione uma atividade Read CSV dentro do contêiner Sequence.
- Adicione a expressão
"languages.csv"
no campo Caminho do arquivo. - No painel Propriedades , adicione a variável
LanguagesDT
no campo DataTable .
- Adicione a expressão
-
Add an Assign activity after the Read CSV activity.
- Adicione a expressão
out_LanguagesDictionary
no campo Para. -
Adicione a expressão
LanguagesDT.AsEnumerable.ToDictionary(of string, string)(function(row) row("Code").ToString, function(row) row("Language").ToString)
no campo Valor.
- Adicione a expressão
- Execute o processo para criar o dicionário.
Detectando o idioma em um único texto
É assim que um processo de automação pode ser construído:
- Abra o Studio e crie um Processo.
-
Arraste um contêiner Sequência para o Designer de Fluxo de Trabalho.
-
Crie as seguintes variáveis:
Nome da variável
Tipo de Variável
Valor Padrão
APIKey
String
Text
String
Result
String
StatusCode
Int32
LanguagesDictionary
Dictionary<String, String>
LanguageCode
String
Reliable
Booleano
Confidence
Double
LanguageName
String
-
-
Adicione uma atividade Atribuir dentro do contêiner da Sequência.
- Adicione a variável
APIKey
no campo Para. - Adicione a expressão
"demo"
no campo Valor.
- Adicione a variável
-
Add an Assign activity after the Assign activity.
- Adicione a variável
Text
no campo Para. - Adicione a expressão
"Hello. This is a sample test."
no campo Valor.
- Adicione a variável
-
Add an HTTP Request activity after the Assign activity.
- Configure o assistente adicionando o endereço do Ponto de extremidade, o Método de Solicitação, o formato de Aceitar respostae do método de Autenticação .
- No painel Propriedades , adicione o valor
application/json
no campo BodyFormat . NOTA: o fluxo de trabalho mostra application/xml. - Adicione a variável
Result
no campo Resultado. - Adicione a variável
StatusCode
no CódigoDoStatus.
- Configure o assistente adicionando o endereço do Ponto de extremidade, o Método de Solicitação, o formato de Aceitar respostae do método de Autenticação .
-
Add an If activity after the HTTP Request activity.
- Adicione a expressão
StatusCode = 200
no campo Condição.
- Adicione a expressão
-
Adicione uma atividade Sequence dentro do campo Then da atividade If.
-
Crie as seguintes variáveis:
Nome da variável
Tipo de Variável
Valor Padrão
ResultJSON
JObject
-
-
Adicione uma atividade Invoke Workflow File dentro do contêiner Sequence .
- Adicione a expressão
"GetLanguagesDictionary.xaml"
no campo Caminho do Fluxo de Trabalho. -
Selecione o botão Editar Argumentos e adicione o seguinte argumento:
Argument name
Direção do Argumento
Tipo de Argumento
Valor Padrão
out_LanguagesDictionary
Out
Dictionary<String, String>
LanguagesDictionary
- Adicione a expressão
-
Add a Deserialize JSON activity after the Invoke Workflow File activity.
- Adicione a variável
Result
no campo Json String .
- Adicione a variável
-
Add an Assign activity after the Deserialize JSON activity.
- Adicione a variável
LanguageCode
no campo Para. - Adicione a expressão
ResultJSON("data")("detections")(0)("language").ToString
no campo Valor.
- Adicione a variável
-
Add an Assign activity after the previous Assign activity.
- Adicione a variável
LanguageName
no campo Para. - Adicione a expressão
LanguagesDictionary(LanguageCode)
no campo Valor.
- Adicione a variável
-
Add another Assign activity after the previous Assign activity.
- Adicione a variável
Reliable
no campo Para. - Adicione a expressão
CBool(ResultJSON("data")("detections")(0)("isReliable").ToString)
no campo Valor.
- Adicione a variável
-
Add an Assign activity after the previous Assign activity.
- Adicione a variável
Confidence
no campo Para. - Adicione a expressão
CDbl(ResultJSON("data")("detections")(0)("confidence").ToString)
no campo Valor.
- Adicione a variável
-
Add a Log Message after the Assign activity.
- Adicione a expressão
"Detection for the text:" + vbCrLf + " Language is " + LanguageName+ vbCrLf +" Reliable detection: " + Reliable.ToString + vbCrLf + " Confidence level: " + Confidence.ToString
no campo Mensagem.
- Adicione a expressão
-
Adicione uma atividade Log Message dentro do campoElse da atividade If.
- Selecione a opção Warn na lista suspensa Level.
- Adicione a expressão
"HTTP Request was not successful. Code: " + StatusCode.ToString
no campo Mensagem.
-
Add a Log Message activity after the previous Log Message activity.
- Selecione a opção Warn na lista suspensa Level.
-
Adicione a expressão
"HTTP Request was not successful. Result: " + Result
no campo Mensagem.
- Execute o processo para detectar e registrar o idioma usado no texto.
Detectando os idiomas em um lote de textos
É assim que um processo de automação pode ser construído:
- Abra o Studio e crie um Processo.
-
Arraste um contêiner Sequência para o Designer de Fluxo de Trabalho.
-
Crie as seguintes variáveis:
Nome da variável
Tipo de Variável
Valor Padrão
APIKey
String
Texts
Corda[]
Result
String
StatusCode
Int32
HTTPRequestBodyJSON
String
-
-
Adicione uma atividade Assign dentro do contêiner Sequência.
- Adicione a variável
APIKey
no campo Para. - Adicione o valor
"demo"
no campo Valor.
- Adicione a variável
-
Add another Assign activity after the previous one.
- Adicione a variável
Texts
no campo Para. - Adicione o valor
{"Hello world.", "Buenos dias, señor.", "Guten Tag.", "Buna ziua, tuturor."}
no campo Valor.
- Adicione a variável
-
Add a new Assign activity after the previous Assign activity.
- Adicione a variável
HTTPRequestBodyJSON
no campo Para. - Adicione o valor
Newtonsoft.Json.JsonConvert.SerializeObject(new with{ .q = Texts })
no campo Valor.
- Adicione a variável
-
Add an HTTP Request activity after the Assign activity.
- Configure o assistente adicionando o endereço do Ponto de extremidade, o Método de Solicitação, forma de Aceitar resposta e do método de Autenticação.
- No painel Propriedades, adicione a variável
HTTPRequestBodyJSON
no campo Corpo. - Adicione o valor
application/json
no campo BodyFormat . - Adicione a variável
Result
no campo Resultado. - Adicione a variável
StatusCode
no CódigoDoStatus.
- Configure o assistente adicionando o endereço do Ponto de extremidade, o Método de Solicitação, forma de Aceitar resposta e do método de Autenticação.
-
Add an If activity after the HTTP Request activity.
- Adicione a expressão
StatusCode = 200
no campo Condição.
- Adicione a expressão
-
Adicione uma atividade Sequence dentro do campo Then da atividade If.
-
Crie as seguintes variáveis:
Nome da variável
Tipo de Variável
Valor Padrão
ResultJSON
JObject
LanguagesDictionary
System.Collections.Generic.Dictionary<System.String, System.String>
LanguageCode
String
LanguageName
String
Reliable
Booleano
Confidence
Double
index
Int32
0
-
-
Adicione uma atividade Invoke Workflow File dentro do contêiner Sequence .
- Adicione a expressão
"GetLanguagesDictionary.xaml"
no campo Caminho do Fluxo de Trabalho. -
Selecione o botão Editar Argumentos e adicione o seguinte argumento:
Argument name
Direção do Argumento
Tipo de Argumento
Valor Padrão
out_LanguagesDictionary
Out
Dictionary<String, String>
LanguagesDictionary
- Adicione a expressão
-
Add a Deserialize JSON activity after the Invoke Workflow File activity.
- Adicione a variável
Result
no campo Json String .
- Adicione a variável
-
Add a For Each activity after the Deserialize JSON activity.
- Adicione a expressão
ResultJSON("data")("detections")
no campo Valores.
- Adicione a expressão
-
Adicione uma atividade Assign dentro do Corpo da atividade For Each.
- Adicione a variável
LanguageCode
no campo Para. - Adicione a expressão
item(0)("language").ToString
no campo Valor.
- Adicione a variável
-
Add an Assign activity after the previous Assign activity.
- Adicione a variável
LanguageName
no campo Para. - Adicione a expressão
LanguagesDictionary(LanguageCode)
no campo Valor.
- Adicione a variável
-
Add another Assign activity after the previous Assign activity.
- Adicione a variável
Reliable
no campo Para. - Adicione a expressão
CBool(item(0)("isReliable").ToString)
no campo Valor.
- Adicione a variável
-
Add an Assign activity after the previous Assign activity.
- Adicione a variável
Confidence
no campo Para. - Adicione a expressão
CDbl(item(0)("confidence").ToString)
no campo Valor.
- Adicione a variável
-
Add a Log Message after the Assign activity.
- Adicione a expressão
"Detection for the text #"+index.ToString +":" + vbCrLf + " Language is " + LanguageName+ vbCrLf +" Reliable detection: " + Reliable.ToString + vbCrLf + " Confidence level: " + Confidence.ToString
no campo Mensagem.
- Adicione a expressão
-
Adicione uma atividade Log Message dentro do campoElse da atividade If.
- Selecione a opção Warn na lista suspensa Level.
- Adicione a expressão
"HTTP Request was not successful. Code: " + StatusCode.ToString
no campo Mensagem.
-
Add a Log Message activity after the previous Log Message activity.
- Selecione a opção Warn na lista suspensa Level.
-
Adicione a expressão
"HTTP Request was not successful. Result: " + Result
no campo Mensagem.
- Execute o processo para detectar e registrar os idiomas utilizados no texto
Aqui você pode baixar um exemplo.