Publication de données au format JSON
JSON est un format standard ouvert qui utilise un 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 construire des API web.
Comme les documents JSON peuvent avoir de nombreuses formes différentes, la plateforme peut extraire des données à partir de fichiers JSON, de fichiers JSON Lines 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 compléter l'extraction.
Fichier JSON
Vous pouvez utiliser un fichier JSON comme source. À partir de ce fichier, la plateforme extrait un document JSON valide (tableau ou objet) dans 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 colonnes).
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 plateforme 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 réguliers (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 multivalué est créé avec toutes les chaînes séparées par un point-virgule (
;
).
Configuration
Racine JSON
La racine JSON indique le chemin vers le tableau JSON qui contient les objets à extraire comme futurs enregistrements de votre jeu de données.
Si le tableau JSON contenant les futures données est à la racine du document, laissez la case racine JSON vide. Si le fichier JSON est un objet JSON, entrez le chemin ijson vers le tableau dans la case RACINE JSON.
Notez que ijson est une syntaxe pour naviguer à l'intérieur des objets JSON, consistant à séparer les noms d'attributs par des points.
Objet JSON
Dans la case objet JSON, indiquez le chemin relatif vers l'objet JSON à extraire.
Exemples
1. Dans ce premier exemple, le tableau JSON est situé à la racine du fichier. La case racine JSON doit donc être laissée vide.
[
{
"nom": "Agra Express",
"origine": "Agra Cantt",
"destination": "New Delhi"
},
{
"nom": "Gour Express",
"origine": "Balurghat",
"destination": "Sealdah"
}
]
Et le jeu de données résultant aura ce schéma :
nom | origine | destination |
Agra Express | Agra Cantt | New Delhi |
Gour Express | Balurghat | Sealdah |
2. Dans ce deuxième exemple, le fichier JSON est plus complexe. La racine JSON correcte à indiquer est content.trains
.
{
"nom_fichier": "trains.json",
"contenu": {
"trains": [
{
"id": 123,
"info": {
"nom": "Agra Express",
"origine": "Agra Cantt",
"destination": "New Delhi"
}
},
{
"id": 555,
"info": {
"nom": "Gour Express",
"origine": "Balurghat",
"destination": "Sealdah"
}
}
]
}
}
Si content.trains
est défini comme la racine JSON, le jeu de données résultant sera :
id | info |
123 | {"origine": "Agra Cantt", "destination": "New Delhi", "nom": "Agra Express"} |
555 | {"origine": "Balurghat", "destination": "Sealdah", "nom": "Gour Express"} |
Pour extraire uniquement les objets JSON info
, et ignorer le numéro id
, vous devez mettre l'objet info
comme racine JSON. Ce n'est qu'alors que le jeu de données résultant sera :
nom | origine | destination |
Agra Express | Agra Cantt | New Delhi |
Gour Express | Balurghat | Sealdah |