WebAPI-Spracherkennung
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.
Es gibt drei Workflows zum Erkennen von Sprachen in Texten mithilfe der Language Detection API. Der erste Workflow erstellt ein Wörterbuch mit Sprachen, der zweite erkennt die Sprache in einem einzelnen Text und der dritte erkennt Sprachen in mehreren Texten.
Erstellen des Sprachenwörterbuchs
Der Workflow erstellt ein Sprachenwörterbuch aus einer CSV-Datei, die Sprachcodes und -namen enthält. Dieser Workflow wird in den beiden anderen Workflows aufgerufen.
So kann der Automatisierungsprozess erstellt werden:
- Öffnen Sie Studio und erstellen Sie einen neuen Prozess.
- Laden Sie das Archiv mit dem Projekt in diesem Beispiel herunter und kopieren Sie den Ordner languages.csv in Ihren Projektordner.
-
Ziehen Sie einen Sequence-Container in den Workflow-Designer.
-
Erstellen Sie die folgende Variable:
Variablenname
Variablentyp
Standardwert
LanguagesDT
DataTable
-
-
Fügen Sie eine Read CSV-Aktivität innerhalb des Sequence-Containers hinzu.
- Fügen Sie den Ausdruck
"languages.csv"
in das Feld Dateipfad ein. - Fügen Sie im Panel Eigenschaften die Variable
LanguagesDT
im Feld DataTable hinzu.
- Fügen Sie den Ausdruck
-
Add an Assign activity after the Read CSV activity.
- Fügen Sie den Ausdruck
out_LanguagesDictionary
im Feld An hinzu. -
Fügen Sie den Ausdruck
LanguagesDT.AsEnumerable.ToDictionary(of string, string)(function(row) row("Code").ToString, function(row) row("Language").ToString)
in das Feld Wert ein.
- Fügen Sie den Ausdruck
- Führen Sie den Prozess aus, um das Wörterbuch zu erstellen.
Erkennen der Sprache in einem einzelnen Text
So kann der Automatisierungsprozess erstellt werden:
- Öffnen Sie Studio und erstellen Sie einen neuen Prozess.
-
Ziehen Sie einen Sequence-Container in den Workflow-Designer.
-
Erstellen Sie die folgenden Variablen:
Variablenname
Variablentyp
Standardwert
APIKey
String
Text
String
Result
String
StatusCode
Int32
LanguagesDictionary
Dictionary<String, String>
LanguageCode
String
Reliable
Boolescher
Confidence
Double
LanguageName
String
-
-
Fügen Sie eine Assign-Aktivität innerhalb des Sequence-Containers hinzu.
- Fügen Sie die Variable
APIKey
im Feld An hinzu. - Fügen Sie den Ausdruck
"demo"
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add an Assign activity after the Assign activity.
- Fügen Sie die Variable
Text
im Feld An hinzu. - Fügen Sie den Ausdruck
"Hello. This is a sample test."
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add an HTTP Request activity after the Assign activity.
- Konfigurieren Sie den Assistenten , indem Sie die Endpunktadresse , die Anforderungsmethode, die Form der Antwort akzeptierenund die Authentifizierungsmethode hinzufügen.
- Fügen Sie im Panel Eigenschaften den Wert
application/json
im Feld BodyFormat hinzu . HINWEIS: Der Workflow zeigt application/xml an. - Fügen Sie die Variable
Result
in das Feld Ergebnis ein. - Fügen Sie die Variable
StatusCode
im Feld StatusCode hinzu.
- Konfigurieren Sie den Assistenten , indem Sie die Endpunktadresse , die Anforderungsmethode, die Form der Antwort akzeptierenund die Authentifizierungsmethode hinzufügen.
-
Add an If activity after the HTTP Request activity.
- Fügen Sie den Ausdruck
StatusCode = 200
in das Feld Bedingung ein.
- Fügen Sie den Ausdruck
-
Fügen Sie eine Sequence-Aktivität im Feld Dann der Aktivität If hinzu.
-
Erstellen Sie die folgenden Variablen:
Variablenname
Variablentyp
Standardwert
ResultJSON
JObject
-
-
Fügen Sie eine Aktivität „ Invoke Workflow File “ innerhalb des Sequence -Containers hinzu.
- Fügen Sie den Ausdruck
"GetLanguagesDictionary.xaml"
in das Feld Workflow Path ein. -
Wählen Sie die Schaltfläche Argumente bearbeiten aus und fügen Sie die folgenden Argumente hinzu:
Argument name
Argumentrichtung
Argumenttyp
Standardwert
out_LanguagesDictionary
Aus
Dictionary<String, String>
LanguagesDictionary
- Fügen Sie den Ausdruck
-
Add a Deserialize JSON activity after the Invoke Workflow File activity.
- Fügen Sie die Variable
Result
im Feld Json String hinzu .
- Fügen Sie die Variable
-
Add an Assign activity after the Deserialize JSON activity.
- Fügen Sie die Variable
LanguageCode
im Feld An hinzu. - Fügen Sie den Ausdruck
ResultJSON("data")("detections")(0)("language").ToString
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add an Assign activity after the previous Assign activity.
- Fügen Sie die Variable
LanguageName
im Feld An hinzu. - Fügen Sie den Ausdruck
LanguagesDictionary(LanguageCode)
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add another Assign activity after the previous Assign activity.
- Fügen Sie die Variable
Reliable
im Feld An hinzu. - Fügen Sie den Ausdruck
CBool(ResultJSON("data")("detections")(0)("isReliable").ToString)
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add an Assign activity after the previous Assign activity.
- Fügen Sie die Variable
Confidence
im Feld An hinzu. - Fügen Sie den Ausdruck
CDbl(ResultJSON("data")("detections")(0)("confidence").ToString)
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add a Log Message after the Assign activity.
- Fügen Sie den Ausdruck
"Detection for the text:" + vbCrLf + " Language is " + LanguageName+ vbCrLf +" Reliable detection: " + Reliable.ToString + vbCrLf + " Confidence level: " + Confidence.ToString
in das Feld Nachricht ein.
- Fügen Sie den Ausdruck
-
Fügen Sie eine Log Message-Aktivität in das Feld Dann der Aktivität If ein.
- Wählen Sie die Option Warn in der Dropdownliste Stufe aus.
- Fügen Sie den Ausdruck
"HTTP Request was not successful. Code: " + StatusCode.ToString
in das Feld Nachricht ein.
-
Add a Log Message activity after the previous Log Message activity.
- Wählen Sie die Option Warn in der Dropdownliste Stufe aus.
-
Fügen Sie den Ausdruck
"HTTP Request was not successful. Result: " + Result
in das Feld Nachricht ein.
- Führen Sie den Prozess aus, um die im Text verwendete Sprache zu erkennen und zu protokollieren.
Erkennen der Sprachen in einem Stapel von Texten
So kann der Automatisierungsprozess erstellt werden:
- Öffnen Sie Studio und erstellen Sie einen neuen Prozess.
-
Ziehen Sie einen Sequence-Container in den Workflow-Designer.
-
Erstellen Sie die folgenden Variablen:
Variablenname
Variablentyp
Standardwert
APIKey
String
Texts
Zeichenfolge[]
Result
String
StatusCode
Int32
HTTPRequestBodyJSON
String
-
-
Fügen Sie eine Assign-Aktivität innerhalb des Sequence-Containers hinzu.
- Fügen Sie die Variable
APIKey
im Feld An hinzu. - Fügen Sie den Wert
"demo"
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add another Assign activity after the previous one.
- Fügen Sie die Variable
Texts
im Feld An hinzu. - Fügen Sie den Wert
{"Hello world.", "Buenos dias, señor.", "Guten Tag.", "Buna ziua, tuturor."}
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add a new Assign activity after the previous Assign activity.
- Fügen Sie die Variable
HTTPRequestBodyJSON
im Feld An hinzu. - Fügen Sie den Wert
Newtonsoft.Json.JsonConvert.SerializeObject(new with{ .q = Texts })
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add an HTTP Request activity after the Assign activity.
- Konfigurieren Sie den Assistenten , indem Sie die Endpunkt-Adresse , die Anforderungsmethode, die Form der Antwort akzeptieren und die Authentifizierungs-Methode hinzufügen.
- Fügen Sie im Bereich Eigenschaften die Variable
HTTPRequestBodyJSON
im Feld Body hinzu. - Fügen Sie den Wert
application/json
im Feld BodyFormat hinzu . - Fügen Sie die Variable
Result
in das Feld Ergebnis ein. - Fügen Sie die Variable
StatusCode
im Feld StatusCode hinzu.
- Konfigurieren Sie den Assistenten , indem Sie die Endpunkt-Adresse , die Anforderungsmethode, die Form der Antwort akzeptieren und die Authentifizierungs-Methode hinzufügen.
-
Add an If activity after the HTTP Request activity.
- Fügen Sie den Ausdruck
StatusCode = 200
in das Feld Bedingung ein.
- Fügen Sie den Ausdruck
-
Fügen Sie eine Sequence-Aktivität im Feld Dann der Aktivität If hinzu.
-
Erstellen Sie die folgenden Variablen:
Variablenname
Variablentyp
Standardwert
ResultJSON
JObject
LanguagesDictionary
System.Collections.Generic.Dictionary<System.String, System.String>
LanguageCode
String
LanguageName
String
Reliable
Boolescher
Confidence
Double
index
Int32
0
-
-
Fügen Sie eine Aktivität „ Invoke Workflow File “ innerhalb des Sequence -Containers hinzu.
- Fügen Sie den Ausdruck
"GetLanguagesDictionary.xaml"
in das Feld Workflow Path ein. -
Wählen Sie die Schaltfläche Argumente bearbeiten aus und fügen Sie die folgenden Argumente hinzu:
Argument name
Argumentrichtung
Argumenttyp
Standardwert
out_LanguagesDictionary
Aus
Dictionary<String, String>
LanguagesDictionary
- Fügen Sie den Ausdruck
-
Add a Deserialize JSON activity after the Invoke Workflow File activity.
- Fügen Sie die Variable
Result
im Feld Json String hinzu .
- Fügen Sie die Variable
-
Add a For Each activity after the Deserialize JSON activity.
- Fügen Sie den Ausdruck
ResultJSON("data")("detections")
in das Feld Werte ein.
- Fügen Sie den Ausdruck
-
Setzen Sie eine Assign-Aktivität in den Textkörper der For Each-Aktivität.
- Fügen Sie die Variable
LanguageCode
im Feld An hinzu. - Fügen Sie den Ausdruck
item(0)("language").ToString
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add an Assign activity after the previous Assign activity.
- Fügen Sie die Variable
LanguageName
im Feld An hinzu. - Fügen Sie den Ausdruck
LanguagesDictionary(LanguageCode)
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add another Assign activity after the previous Assign activity.
- Fügen Sie die Variable
Reliable
im Feld An hinzu. - Fügen Sie den Ausdruck
CBool(item(0)("isReliable").ToString)
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add an Assign activity after the previous Assign activity.
- Fügen Sie die Variable
Confidence
im Feld An hinzu. - Fügen Sie den Ausdruck
CDbl(item(0)("confidence").ToString)
in das Feld Wert ein.
- Fügen Sie die Variable
-
Add a Log Message after the Assign activity.
- Fügen Sie den Ausdruck
"Detection for the text #"+index.ToString +":" + vbCrLf + " Language is " + LanguageName+ vbCrLf +" Reliable detection: " + Reliable.ToString + vbCrLf + " Confidence level: " + Confidence.ToString
in das Feld Nachricht ein.
- Fügen Sie den Ausdruck
-
Fügen Sie eine Log Message-Aktivität in das Feld Dann der Aktivität If ein.
- Wählen Sie die Option Warn in der Dropdownliste Stufe aus.
- Fügen Sie den Ausdruck
"HTTP Request was not successful. Code: " + StatusCode.ToString
in das Feld Nachricht ein.
-
Add a Log Message activity after the previous Log Message activity.
- Wählen Sie die Option Warn in der Dropdownliste Stufe aus.
-
Fügen Sie den Ausdruck
"HTTP Request was not successful. Result: " + Result
in das Feld Nachricht ein.
- Führen Sie den Prozess aus, um die im Text verwendeten Sprachen zu erkennen und zu protokollieren
Hier können Sie ein Beispiel herunterladen.