WebAPI-Spracherkennung
In den folgenden Beispielen wird erläutert, wie Aktivitäten wie HTTP Request oder Deserialize Json zum Aufrufen einer öffentlichen API, zum Extrahieren von Informationen und zum Anzeigen der Ergebnisse verwendet werden. Diese Aktivitäten finden Sie im Paket UiPath.WebAPI.Activities.
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
-
Ziehen Sie eine Assign-Aktivität nach der Aktivität Read CSV.
- 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
-
Fügen Sie eine Assign-Aktivität nach der Assign-Aktivität hinzu.
- 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
-
Fügen Sie eine HTTP Request-Aktivität nach der Assign-Aktivität hinzu.
- 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.
-
Fügen Sie eine If-Aktivität nach der Aktivität HTTP Request hinzu.
- 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
-
Fügen Sie die Aktivität Deserialize JSON nach der Aktivität Invoke Workflow File hinzu.
- Fügen Sie die Variable
Result
im Feld Json String hinzu .
- Fügen Sie die Variable
-
Fügen Sie eine Assign-Aktivität nach der Deserialize JSON-Aktivität hinzu.
- 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
-
Fügen Sie eine Assign-Aktivität nach der vorherigen Assign-Aktivität hinzu.
- 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
-
Fügen Sie eine weitere Assign-Aktivität nach der vorherigen Assign-Aktivität hinzu.
- 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
-
Fügen Sie eine Assign-Aktivität nach der vorherigen Assign-Aktivität hinzu.
- 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
-
Fügen Sie eine Log Message-Aktivität nach der Assign-Aktivität hinzu.
- 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.
-
Fügen Sie eine Log Message-Aktivität nach der vorherigen Aktivität Log Message hinzu.
- 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
-
Fügen Sie eine weitere Assign-Aktivität nach der vorherigen hinzu.
- 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
-
Fügen Sie eine neue Assign-Aktivität nach der vorherigen Assign-Aktivität hinzu.
- 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
-
Fügen Sie eine HTTP Request-Aktivität nach der Assign-Aktivität hinzu.
- 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.
-
Fügen Sie eine If-Aktivität nach der Aktivität HTTP Request hinzu.
- 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
-
Fügen Sie die Aktivität Deserialize JSON nach der Aktivität Invoke Workflow File hinzu.
- Fügen Sie die Variable
Result
im Feld Json String hinzu .
- Fügen Sie die Variable
-
Fügen Sie eine For Each-Aktivität nach der Aktivität Deserialize JSON hinzu.
- 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
-
Fügen Sie eine Assign-Aktivität nach der vorherigen Assign-Aktivität hinzu.
- 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
-
Fügen Sie eine weitere Assign-Aktivität nach der vorherigen Assign-Aktivität hinzu.
- 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
-
Fügen Sie eine Assign-Aktivität nach der vorherigen Assign-Aktivität hinzu.
- 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
-
Fügen Sie eine Log Message-Aktivität nach der Assign-Aktivität hinzu.
- 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.
-
Fügen Sie eine Log Message-Aktivität nach der vorherigen Aktivität Log Message hinzu.
- 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.