Extraction vers un schéma JSON
L’extraction vers un schéma va plus loin que l’extraction libre : vous définissez à l’avance les champs attendus et leur type, et l’outil renvoie, pour chaque page, un JSON conforme à cette forme. De quoi alimenter un traitement automatisé avec des données toujours rangées de la même façon.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Fixer la forme avant d’extraire
Plutôt que de décrire vaguement ce que vous cherchez, vous posez un cadre : voici les champs, voici leur nature. L’outil s’y tient et remplit ce moule à partir du contenu de la page. Cette contrainte guide le modèle et lève une bonne part de l’ambiguïté : il ne renvoie pas ce qu’il croit intéressant, mais ce que vous avez explicitement demandé, sous le nom et le type que vous avez choisis pour chaque information.
Des données régulières, page après page
Le grand avantage d’un schéma, c’est la régularité. Cent pages traitées produisent cent résultats à la structure identique : les mêmes champs, dans le même ordre, avec les mêmes types. C’est exactement ce qu’attend un traitement automatisé, un import de tableur ou une base de données, qui refusent les données de forme changeante. Là où l’extraction libre varie d’une page à l’autre, le schéma garantit une sortie prévisible et directement exploitable.
Types de champs et données manquantes
Un champ peut être du texte, un nombre, une date, un oui ou non, ou une liste. Préciser le type évite les surprises : un prix revient en chiffre, prêt pour un calcul, et non en texte à nettoyer. Quand une information réclamée est absente de la page, le champ correspondant est laissé vide plutôt qu’inventé : vous savez ainsi ce qui manque réellement, ce qui vaut mieux qu’une valeur approximative glissée pour combler le trou.
Une IA guidée, pas une devinette
Comme l’extraction en langage courant, cet outil s’appuie sur un modèle de langage ; le schéma sert de garde-fou et resserre le champ des interprétations possibles. Le résultat est plus fiable et plus régulier qu’une extraction libre, mais reste issu d’une lecture automatique : sur des données sensibles, un contrôle final garde son intérêt. Le schéma réduit le risque d’erreur, il ne le supprime pas entièrement.
Cas d’usage
Fiches produit normalisées
Studio Lumen SAS extrait chaque fiche d’un site au même format — nom, prix, référence, disponibilité — pour alimenter un catalogue toujours cohérent.
Import automatisé
Sophie Nguyen fait entrer les données de plusieurs pages dans un tableur sans nettoyage, car chaque résultat respecte la même structure.
Intégration technique
Un développeur récupère un JSON conforme à son schéma et le passe directement à son application, sans étape de reformatage intermédiaire.
Collecte régulière
Menuiserie Rousseau & Fils relève chaque semaine les mêmes champs d’une page fournisseur, avec la certitude d’un format identique à chaque fois.
Questions fréquentes
En quoi un schéma améliore-t-il le résultat ?
Il fixe à l’avance les champs et leurs types, ce qui guide le modèle et rend la sortie régulière : les mêmes champs, dans le même ordre, page après page — idéal pour un traitement automatisé.
Que se passe-t-il si un champ est absent de la page ?
Le champ correspondant est laissé vide plutôt que rempli au hasard. Vous distinguez ainsi ce qui manque réellement d’une valeur qui aurait été inventée pour combler le trou.
Quels types de champs puis-je définir ?
Du texte, un nombre, une date, un oui ou non, ou une liste. Préciser le type évite le nettoyage : un prix revient en chiffre, prêt pour un calcul, et non en texte.
Combien coûte l’extraction vers un schéma ?
Le tarif est de $0.046 par requête et $0.0145 par URL, en dollars US. Ce prix couvre le travail du modèle de langage guidé par votre schéma.
L’adresse et les données sont-elles conservées ?
Non. La page est lue le temps de produire le JSON, qui vous est renvoyé, puis l’URL et le résultat sont écartés de nos serveurs.
Faut-il un compte ?
Non, aucune inscription. Le service se règle à l’usage ; une facture s’obtient auprès de [email protected], où une vraie personne vous répond.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/web/scrape-schema \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://ejemplo.com"}'const res = await fetch("https://api.kit.forhosting.com/web/scrape-schema", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"url": "https://ejemplo.com"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/scrape-schema",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"url": "https://ejemplo.com"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/scrape-schema", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"url":"https://ejemplo.com"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"url":"https://ejemplo.com"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/scrape-schema", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"url": "https://ejemplo.com"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.scrape_schema",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
timeout_sec | 30 |
max_crawl_pages | 25 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
422 | task_failed | La tâche a échoué : elle ne vous est pas facturée. |