JSON-Konnektoren¶
JSON ist ein offenes Standardformat, das zur Übermittlung von Datenobjekten, die aus Schlüssel-Wert-Paaren bestehen, visuell lesbaren Text verwendet. Dies ist das gängigste Format zur Erstellung von APIs.
Da JSON-Dokumente viele verschiedene Formen haben können, gibt es 3 JSON-Konnektoren, um Daten aus einer JSON-Datei zu extrahieren:
JSON Datei-Konnektor,
JSON Zeilen-Konnektor,
JSON Dict-Konnektor.
Hinweis
Sollte ein Konnektor die Extraktion eines Dokumentes mit komplexer Struktur nicht vollständig bewältigen, können Sie einen der JSON-Prozessoren verwenden, um die Extraktion abzuschließen.
JSON-Datei¶
Dieser Konnektor extrahiert ein gültiges JSON-Dokument (Array oder Objekt) in einen Datensatz mehrerer Einträge.
Ist das Dokument ein JSON-Array, wird für jedes Objekt innerhalb des Arrays ein Eintrag erstellt (die Schlüssel dienen als Spaltennamen).
Ist das Dokument ein JSON-Objekt, sollte der Parameter "JSON-Stamm" einen durch einen Punkt getrennten Pfad zum Array in Ihrem Objekt enthalten. Bei fehlender Angabe probiert der Konnektor
Elemente
.
Dank des Parameters "JSON-Objekt" kann der Konnektor vor dem Extrahieren der Einträge einen anderen Pfad für jedes Element innerhalb des Arrays verfolgen.
Unterstützte Feldtypen¶
Reguläre Felder (dezimal, boolesch, Zeichenfolge)
JSON-Objekte werden verwendet wie sie sind
- Array:
enthält das Array JSON-Objekte, wird es verwendet, wie es ist
enthält es Zeichenfolgen, wird ein mehrwertiges Feld mit allen durch ein Semikolon (";") getrennten Zeichenfolgen erstellt
Erstellung¶
Konfiguration¶
Name | Beschreibung |
Verwendung |
---|---|---|
Dateinamen extrahieren |
Es wird eine neue Spalte mit dem Namen der Quelldatei erstellt. |
Standardmäßig ist das Kontrollkästchen nicht markiert. Markieren Sie das Kontrollkästchen, um den Dateinamen in einer hinzugefügten Spalte zu extrahieren. |
JSON-Stamm |
Pfad zum JSON-Array, das die Objekte enthält, die zu den Datensatzeinträgen werden sollen. |
Wenn sich das JSON-Array direkt am Stamm befindet, lassen Sie das Textfeld leer. Wenn die JSON-Datei ein JSON-Objekt ist, geben Sie den ijson-Pfad zum Array in das Textfeld ein. Hinweis ijson ist eine Syntax zur Navigation innerhalb von JSON-Objekten. Dabei werden die Attributnamen durch Punkte getrennt (z.B. "content.trains"). Für fortgeschrittene Benutzer stehen weitere Funktionen zur Verfügung. |
JSON-Objekt |
Relativer Pfad des zu extrahierenden JSON-Objekts. |
Wenn der JSON-Stamm festgelegt (oder leer gelassen) wurde und die Vorschau irrelevante Spalten anzeigt und das JSON-Objekt als Wert einer Spalte extrahiert wurde, schreiben Sie den Namen dieser Spalte in das Textfeld des JSON-Objekts. |
Beispiele¶
Example 1:
[
{
"name": "Agra Express",
"origin": "Agra Cantt",
"destination": "New Delhi"
},
{
"name": "Gour Express",
"origin": "Balurghat",
"destination": "Sealdah"
}
]
In dieser JSON-Datei befindet sich das JSON-Array direkt am Stamm. Es ist nicht erforderlich, die JSON-Stamm-Konfiguration auszufüllen.
Der resultierende Datensatz ist (die Reihenfolge der Spalten kann unterschiedlich sein):
Name |
Herkunft |
Ziel |
Agra Express | Agra Cantt | New Delhi |
Gour Express | Balurghat | Sealdah |
Example 2:
{
"filename": "trains.json",
"content": {
"trains": [
{
"id": 123,
"info": {
"name": "Agra Express",
"origin": "Agra Cantt",
"destination": "New Delhi"
}
},
{
"id": 555,
"info": {
"name": "Gour Express",
"origin": "Balurghat",
"destination": "Sealdah"
}
}
]
}
}
Für diese komplexe JSON-Datei lautet der korrekte JSON-Stamm content.trains
. Wenn content.trains
als JSON-Stamm festgelegt ist, dann resultiert folgender Datensatz daraus:
id | info |
123 | {"Herkunft": "Agra Cantt", "Ziel": "New Delhi", "Name": "Agra Express"} |
555 | {"Herkunft": "Balurghat", "Ziel": "Sealdah", "Name": "Gour Express"} |
Um nur die JSON-Objekte info
zu extrahieren und die id
Nummer zu überspringen, ist das richtige JSON-Objekt info
. Wenn info
als JSON-Objekt festgelegt ist, dann resultiert folgender Datensatz daraus:
Name |
Herkunft |
Ziel |
Agra Express | Agra Cantt | New Delhi |
Gour Express | Balurghat | Sealdah |
JSON-Zeile¶
Dieser Konnektor erwartet eine Datei, in der jede Zeile ein einzeiliges JSON-Dokument ist. Im Gegensatz zu jeder einzelnen Zeile ist die gesamte Datei kein gültiges JSON-Dokument.
Der Konnektor unterstützt zwei Modi:
ein JSON-Array in jeder Zeile (oder ein Array insgesamt)
ein JSON-Objekt in jeder Zeile
Unterstützte Feldtypen¶
Reguläre Felder (dezimal, Zeichenfolge)
Array: wird verwendet, so wie es ist
JSON-Objekte werden verwendet wie sie sind
Erstellung¶
Konfiguration¶
Name | Beschreibung |
Verwendung |
---|---|---|
Dateinamen extrahieren |
Es wird eine neue Spalte mit dem Namen der Quelldatei erstellt. |
Standardmäßig ist das Kontrollkästchen nicht markiert. Markieren Sie das Kontrollkästchen, um den Dateinamen in einer hinzugefügten Spalte zu extrahieren. |
Nummer der ersten Zeile |
Bei Dateien, die nicht in der ersten Zeile beginnen, kann bestimmt werden, welche Zeile als die erste angesehen werden soll. Die Zeilen darüber werden vom Datensatz übersprungen. |
Standardmäßig beginnt der Datensatz in Zeile 1. Geben Sie die Nummer der Zeile an, die als Anfang des Datensatzes berücksichtigt werden soll. |
Überschriften |
Für Dateien, deren erste Zeile Spaltentitel enthält. |
Standardmäßig ist das Kontrollkästchen markiert. Es bezieht sich auf die Werte der Feldbeschriftungen der ersten Zeile. Entfernen Sie die Markierung des Kontrollkästchens, wenn die erste Zeile keine Titel, sondern Daten enthält: in diesem Fall sind die Feldbezeichnungen standardmäßig leer. |
JSON Dict¶
Dieser Konnektor extrahiert ein gültiges JSON-Dokument (Array oder Objekt) in einen Datensatz mehrerer Einträge.
Es wird ein JSON-Objekt erwartet, in dem jeder Schlüssel einen Eintrag enthält, und es werden Einträge erstellt, mit einer Spalte, die den Schlüssel enthält, und einer Spalte für jedes Attribut des entsprechenden Objekts (oder einer einzelnen Spalte mit dem Namen "Wert", wenn der Wert eine Zeichenfolge ist).
Unterstützte Feldtypen¶
Reguläre Felder (dezimal, boolesch, Zeichenfolge)
JSON-Objekte werden verwendet wie sie sind
- Array:
enthält das Array JSON-Objekte, wird es verwendet, wie es ist
enthält es Zeichenfolgen, wird ein mehrwertiges Feld mit allen durch ein Semikolon (";") getrennten Zeichenfolgen erstellt
Erstellung¶
Konfiguration¶
Name | Beschreibung |
Verwendung |
---|---|---|
Dateinamen extrahieren |
Es wird eine neue Spalte mit dem Namen der Quelldatei erstellt. |
Standardmäßig ist das Kontrollkästchen nicht markiert. Markieren Sie das Kontrollkästchen, um den Dateinamen in einer hinzugefügten Spalte zu extrahieren. |
JSON-Stamm |
Pfad zum JSON-Objekt, das die Einträge enthält. |
Wenn sich das JSON-Objekt direkt am Stamm befindet, lassen Sie das Textfeld leer. Geben Sie sondt den ijson-Pfad zum Objekt in das Textfeld ein. Hinweis ijson ist eine Syntax zur Navigation innerhalb von JSON-Objekten. Dabei werden die Attributnamen durch Punkte getrennt (z.B. "content.trains"). Für fortgeschrittene Benutzer stehen weitere Funktionen zur Verfügung. |
Schlüssel-Feldname |
Beschriftung der Spalte "Schlüssel" |
Standardmäßig "Schlüssel". Schreiben Sie die neue Bezeichnung der Spalte "Schlüssel" in das Textfeld. Es wird sowohl die Bezeichnung als auch die technische Kennung der Spalte geändert. |
Beispiele¶
1. Beispiel:
{
"2016": {
"type1": {
"price": 10,
"color": "blue",
"available": true
},
"type2": {
"price": 9,
"color": "red",
"available": true
}
},
"2015": {
"type1": {
"price": 10.5,
"color": "teal",
"available": true
},
"type2": {
"price": 9.1,
"color": "crimson",
"available": true
}
}
}
Wenn der JSON-Stamm leer gelassen wird, dann resultiert folgender Datensatz daraus:
Schlüssel |
Typ1 |
Typ2 |
2016 | {"color": "blue", "available": true, "price": 10} | {"color": "red", "available": true, "price": 9} |
2015 | {"color": "teal", "available": true, "price": 10.5} | {"color": "crimson", "available": true, "price": 9.1} |
2. Besipiel:
{
"results": {
"datasets": [{
"abc": {
"title": "A B C",
"description": "A description about ABC"
}
},
{
"xyz": {
"title": "D E F",
"description": "Another description"
}
}
]
}
}
Für diese komplexe JSON-Datei lautet der korrekte JSON-Stamm results.datasets.item
.
results.datasets
führt zum Arrayitem
iteriert innerhalb des Arrays und ruft jedes Objekt ab
Schlüssel |
Beschreibung |
Titel |
abc | Eine Beschreibung von ABC |
A B C |
xyz | Eine andere Beschreibung |
D E F |