Fichiers JSON
JSON est un format standard ouvert qui utilise du texte lisible par l'homme pour transmettre des objets de données constitués de paires clé-valeur. C'est le format de données le plus courant pour créer des API Web.
Comme les documents JSON peuvent avoir de nombreuses formes différentes, la plate-forme peut extraire des données à partir de fichiers JSON, de fichiers Lignes JSON et de dictionnaires JSON.
Si la plateforme n'extrait pas complètement un document avec une structure complexe, utilisez l'un des processeurs JSON pour terminer l'extraction.
Fichier JSON
Vous pouvez utiliser un fichier JSON comme source. A partir de ce fichier, la plateforme extrait un document JSON valide (tableau ou objet) en un jeu de données de plusieurs enregistrements :
Si le document est un tableau JSON, un enregistrement sera créé pour chaque objet à l'intérieur du tableau (les clés seront utilisées comme noms de colonne).
Si le document est un objet JSON, le paramètre "Racine JSON" doit contenir un chemin séparé par des points vers le tableau à l'intérieur de votre objet. S'il n'est pas fourni, la plate-forme essaie
items
.
Pour chaque élément à l'intérieur du tableau, la plateforme peut suivre un autre chemin avant d'extraire les enregistrements avec le paramètre "objet JSON".
Types de champs pris en charge
Champs normaux (décimal, booléen, chaîne)
Objet JSON : utilisé tel quel
Tableau:
Si le tableau contient des objets JSON, il est utilisé tel quel.
Si le tableau contient des chaînes, un champ à plusieurs valeurs est créé avec toutes les chaînes séparées par un point-virgule (
;
).
Création
Pour plus d'informations sur l'ajout d'une source de fichier, voir Récupération d'un fichier.
Configuration
Nom | Description | Utilisation |
Racine JSON | Le chemin d'accès ijson au tableau JSON qui contient les objets à extraire en tant qu'enregistrements de jeu de données ijson est une syntaxe permettant de naviguer dans les objets JSON. Elle consiste à séparer les noms d’attribut avec des points (par exemple, ). Des fonctionnalités supplémentaires sont disponibles pour les utilisateurs avancés. | Si le tableau JSON se trouve à la racine du document, laissez la zone racine JSON vide. Si le fichier JSON est un objet JSON, entrez le chemin ijson vers le tableau dans la zone racine JSON . |
Objet JSON | Chemin relatif vers l'objet JSON à extraire | Après avoir défini la racine JSON, si l'aperçu affiche des colonnes non pertinentes et que l'objet JSON a été extrait en tant que valeur d'une colonne, entrez le nom de cette colonne dans la zone Objet JSON . |
Nom | Description | Utilisation |
Extraire le nom du fichier | Crée une nouvelle colonne avec le nom du fichier source. | Par défaut, cette option est désactivée. Activez cette option pour extraire le nom du fichier dans une colonne supplémentaire. |
Exemples
Exemple 1:
[
{
"name": "Agra Express",
"origin": "Agra Cantt",
"destination": "New Delhi"
},
{
"name": "Gour Express",
"origin": "Balurghat",
"destination": "Sealdah"
}
]
Dans ce fichier JSON, le tableau JSON est directement à la racine. Vous pouvez laisser la zone racine JSON vide.
Le jeu de données résultant sera :
Nom | origine | destination |
Agra express | Agra Cantt | New Delhi |
Gour Express | Balurghat | Sealdah |
L'ordre des colonnes peut varier.
Exemple 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"
}
}
]
}
}
Pour ce fichier JSON complexe, la racine JSON correcte est content.trains
. Si content.trains
est défini comme racine JSON, le jeu de données résultant sera :
Id | Info |
123 | {"origin": "Agra Cantt", "destination": "New Delhi", "name": "Agra Express"} |
555 | {"origin": "Balurghat", "destination": "Sealdah", "name": "Gour Express"} |
Pour extraire uniquement les objets JSON info
et ignorer le numéro d' id
, l'objet JSON correct est info
. Si info
st défini en tant qu'objet JSON, le jeu de données résultant sera :
Nom | origine | destination |
Agra express | Agra Cantt | New Delhi |
Gour Express | Balurghat | Sealdah |
Lignes JSON
Vous pouvez utiliser un fichier Lignes JSON comme source. Dans les fichiers Lignes JSON, chaque ligne est un document JSON d'une ligne. L'ensemble du fichier n'est pas un document JSON valide, mais chaque ligne l'est.
Deux modes sont pris en charge :
Un tableau JSON sur chaque ligne (ou un tableau globa)
Un objet JSON sur chaque ligne
Types de champs pris en charge
Champs normaux (décimal, chaîne de caractères)
Tableau : utilisé tel quel
Objet JSON : utilisé tel quel
Création
Pour plus d'informations sur l'ajout d'une source de fichier, voir Récupération d'un fichier .
Configuration
Nom | La description | Usage |
Extraire le nom de fichier | Crée une nouvelle colonne avec le nom du fichier source. | Par défaut, cette option est désactivée. Activez cette option pour extraire le nom du fichier dans une colonne supplémentaire. |
Numéro de la première ligne | Pour les fichiers qui ne commencent pas à la première ligne, il est possible de définir quelle ligne est considérée comme la première. Les lignes précédentes seront ignorées du jeu de données. | Par défaut, le jeu de données commence à la ligne 1. Entrez le numéro de la ligne qui doit être considérée comme le début du jeu de données. |
En-têtes | Pour les fichiers dont la première ligne contient des noms de champs | Par défaut, cette option est activée. Les valeurs de la première ligne deviennent des labels de champs. Désactivez cette option si la première ligne ne contient pas de noms de champs mais des données : les labels de champs seront vides par défaut. |
JSON Dict
Vous pouvez utiliser un dictionnaire JSON comme source. La plateforme extrait un document JSON valide (tableau ou objet) dans un jeu de données de plusieurs enregistrements.
La plateforme attend un objet JSON où chaque clé contient un enregistrement. La plateforme crée alors des enregistrements avec :
une colonne pour contenir la clé
une colonne pour chaque attribut de l'objet correspondant (ou une colonne unique nommée "value" si la valeur est une chaîne de caractères au lieu d'un objet).
Types de champs pris en charge
Champs normaux (décimal, booléen, chaîne de caractères)
Objet JSON : sera utilisé tel quel
Tableau:
Si le tableau contient des objets JSON, il est utilisé tel quel.
Si le tableau contient des chaînes de caractères, un champ à plusieurs valeurs est créé avec toutes les chaînes séparées par un point-virgule (
;
).
Création
Pour plus d'informations sur l'ajout d'une source de fichier, voir Récupération d'un fichier .
Configuration
Nom | Description | Utilisation |
Extraire le nom du fichier | Crée une nouvelle colonne avec le nom du fichier source. | Par défaut, cette option est désactivée. Activez cette option pour extraire le nom du fichier dans une colonne supplémentaire. |
Racine JSON | Le chemin d'accès ijson au tableau JSON qui contient les objets à extraire en tant qu'enregistrements de jeu de données ijson est une syntaxe permettant de naviguer dans les objets JSON. Elle consiste à séparer les noms d’attribut avec des points (par exemple, ). Des fonctionnalités supplémentaires sont disponibles pour les utilisateurs avancés. | Si le tableau JSON se trouve à la racine du document, laissez le champ Racine JSON vide. Si le fichier JSON est un objet JSON, indiquez le chemin d'accès ijson au tableau dans le champ Racine JSON. |
Nom du champ de la clé | Label de la colonne "key". | La valeur par défaut est "key". Saisissez le nouveau label de la colonne "key" dans la case Nom du champ de la clé. Le label et l’identifiant technique de la colonne seront modifiés. |
Exemples
Exemple 1:
{
"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
}
}
}
Si vous laissez la zone racine JSON vide, le jeu de données résultant sera :
clé | type 1 | type 2 |
2016 | {"color": "bleu", "disponible": vrai, "prix": 10} | {"color": "rouge", "disponible": vrai, "prix": 9} |
2015 | {"color": "bleu sarcelle", "disponible": vrai, "prix": 10.5} | {"color": "cramoisi", "disponible": vrai, "prix": 9.1} |
Exemple 2 :
{
"results": {
"datasets": [{
"abc": {
"title": "AB C",
"description": "A description about ABC"
}
},
{
"xyz": {
"title": "DE F",
"description": "Another description"
}
}
]
}
}
Pour ce fichier JSON complexe, la racine JSON correcte est results.datasets.item
.
results.datasets
mène au tableauitem
itère à l'intérieur du tableau et récupère chaque objet
Key | Description | Titre |
abc | Une description de l'ABC | abc |
xyz | Un autre descriptif | DÉF |