Comment extraire les données produits des URL

· 8 min de lecture

Copier un prix, un SKU et trois photos depuis la page d'un fournisseur dans une feuille de calcul prend quelques minutes. Faites cela pour 150 articles sur un projet résidentiel et une journée de travail est terminée, avec des fautes de frappe en prime. Ce guide montre comment extraire les données produits des URL de manière fiable : vérifiez d'abord les données structurées, extrayez les champs dont vous avez besoin, revenez à l'analyse de la mise en page lorsque le balisage est manquant, et nettoyez le résultat pour qu'il puisse être directement intégré dans un devis.

Ce dont vous avez besoin avant l'étape 1 :

  • Une liste d'URL de produits fournisseurs (une par produit, pas des pages de catégories)
  • Un navigateur avec des outils de développement, ou un environnement Python si vous souhaitez le scripter
  • Un format cible pour vos données : nom, SKU, prix, devise, images, dimensions
  • Une règle pour votre devise de base, afin que les prix puissent être comparés

Pourquoi l'extraction des URL produits est préférable à la saisie manuelle

La saisie manuelle échoue de trois manières prévisibles. C'est lent. Elle introduit des erreurs, comme un chiffre échangé dans un SKU ou un prix copié avec le mauvais symbole de devise. Et elle devient obsolète au moment où vous avez terminé, car personne ne revérifie la page fournisseur à mi-chemin de l'approvisionnement.

Apprendre à extraire les données produits des URL transforme chacune d'elles en un enregistrement cohérent. Les tutoriels de Oxylabs et Zyte montrent le schéma général : demander la page, localiser les champs, les stocker dans un format structuré. La même logique s'applique aux produits d'intérieur, que vous écriviez le script vous-même ou utilisiez un outil qui le fait pour vous.

Pour un designer, la récompense n'est pas l'élégance. C'est la cohérence. Quand chaque produit arrive avec les mêmes champs, vous pouvez trier par prix, regrouper par pièce et repérer la lampe unique tarifée en dollars parmi quarante tarifées en euros. C'est la différence entre une liste de courses et un devis opérationnel.

Étape 1 : Vérifier si la page du fournisseur contient des données produit JSON-LD

Avant d'écrire un sélecteur ou d'apprendre un nouvel outil, découvrez si la page ne vous fournit pas déjà des données propres. De nombreux sites de fournisseurs intègrent des données structurées dans une balise script avec le type application/ld+json. Elle se situe à l'écart de la mise en page visible et existe pour que les moteurs de recherche et autres systèmes puissent lire le produit de manière cohérente.

Pour vérifier, ouvrez la page produit, affichez le code source de la page et recherchez ld+json. Si vous trouvez un bloc, lisez-le. Vous recherchez un type Product généralement avec un imbriqué Offer qui contient le prix. Un extracteur et vérificateur de schéma JSON-LD gratuit peut extraire ces blocs pour vous et signaler ce qui est présent, ce qui est utile lorsque le code source de la page est un mur de code minifié.

Deux mises en garde. Tous les sites ne publient pas de données structurées, et les outils qui en dépendent ne retournent rien pour les pages sans balisage. Et une page peut contenir plusieurs types de schéma à la fois (fil d'Ariane, organisation, produit), alors assurez-vous de lire le bloc Product et non quelque chose à côté.

Effectuez cette vérification sur un produit de chaque fournisseur, pas sur chaque URL. Les fournisseurs utilisent généralement un seul modèle pour l'ensemble du catalogue, donc un seul résultat vous indique comment le reste se comportera.

Étape 2 : Extraire le nom, le SKU, le prix et les images des données structurées

Lorsque le JSON-LD est présent, l'extraction est simple car les champs sont étiquetés. Un outil tel que « un extracteur de schéma e-commerce » lit le nom, le prix, la devise, la disponibilité, la marque, le SKU, le GTIN, la note et les images à partir de schema.org JSON-LD, microdata et OpenGraph, ce qui couvre la plupart des besoins d'un designer.

Si vous préférez écrire vous-même un script pour analyser les données produit à partir des URL, le processus est court. Récupérez la page, trouvez chaque « ld+json script, analysez chacun comme JSON, et sélectionnez l'objet dont le type est « Product». Ensuite, lisez ces champs :

  • name: le titre du produit
  • sku ou gtin: l'identifiant que vous citerez sur les bons de commande
  • brand: le fabricant
  • image: une URL ou une liste d'URL
  • offers: le prix, la devise et la disponibilité

Surveillez la paire prix et devise. Ce sont des champs séparés, et traiter le simple nombre comme des euros est exactement la façon dont un budget peut discrètement mal tourner. Capturez les deux à chaque fois.

Vérifiez également comment les images sont listées. Certains sites fournissent une image principale unique, d'autres une galerie complète. Pour les tableaux de présentation, vous voulez la version la plus haute résolution, alors regardez le modèle d'URL et voyez si une variante plus grande existe.

L'avantage de cette approche est la stabilité. Comme les données structurées résident dans leur propre balise script, une refonte de site qui modifie la mise en page les brise rarement, votre analyse est donc beaucoup moins fragile que tout ce qui est basé sur des sélecteurs.

Étape 3 : Revenir à l'analyse de la mise en page et gérer les pages bloquées ou JavaScript

Certaines pages ne disposent d'aucune donnée structurée utilisable. Dans ce cas, vous analysez la mise en page visible, en localisant les éléments par leurs balises et leurs classes CSS. Un guide sur le web scraping en Python pour les informations produit montre ce style, en utilisant des sélecteurs spécifiques comme un titre de produit pour extraire le nom.

Apprendre à analyser les données de produits à partir d'URL grâce à l'analyse de mise en page fonctionne, mais c'est fragile. Les sélecteurs dépendent de la façon dont la page est construite, donc lorsque le fournisseur met à jour son modèle, votre extraction peut silencieusement ne rien retourner ou saisir le mauvais élément. Conservez vos sélecteurs en un seul endroit pour qu'ils soient faciles à corriger, et vérifiez la sortie à chaque fois qu'un fournisseur relance son site.

Deux autres obstacles se présentent souvent :”]} :

  • Blocage. Les grands détaillants refuseront une simple requête de script. L'envoi d'en-têtes de requête réalistes aide, bien que certains sites nécessitent plus que cela.
  • Rendu JavaScript. Si le prix ou la galerie n'apparaît qu'après l'exécution des scripts de la page, une simple requête voit une coquille vide. Pour ces pages, vous avez besoin d'un navigateur sans tête tel que Playwright ou Selenium, qui charge la page comme le ferait le navigateur d'une personne avant que vous ne la lisiez.

Si cela ressemble à plus d'ingénierie qu'un studio de design ne souhaite en assumer, soit. C'est le créneau pour lequel le Web Clipper d'ArchiBoard, propulsé par l'IA, a été conçu : il extrait les photos, les prix et les références produits (SKU) d'une URL de fournisseur sans que vous ayez à gérer les sélecteurs ou les configurations de rendu. Quelle que soit la voie que vous choisissez, testez-la sur une poignée d'URL réelles de chaque fournisseur avant de lui faire confiance pour un projet complet. Le succès sur un site ne dit pas grand-chose sur le suivant.

Étape 4 : Normaliser la devise, supprimer les doublons et fournir des estimations

Savoir comment extraire les données produits des URL n'est que la moitié du travail, car l'extraction brute ne constitue pas encore des données utilisables. La dernière étape les rend comparables.

Normaliser la devise. Stockez le prix et la devise d'origine tels qu'ils ont été capturés, puis convertissez-les dans la devise de base de votre projet à l'aide d'un taux que vous enregistrez avec la date. Conservez le chiffre d'origine, car les taux fluctuent et les fournisseurs facturent dans leur propre devise. ArchiBoard gère cela avec des estimations multi-devises en temps réel, de sorte que chaque ligne est convertie dans la devise du projet sans feuille de calcul supplémentaire.

Supprimer les doublons. Le même produit apparaît souvent sous plusieurs URL : paramètres de suivi, variantes de couleur, domaines régionaux, barres obliques finales. Supprimez les chaînes de requête dont vous n'avez pas besoin, mettez l'hôte en minuscules et utilisez la référence produit (SKU) ou le GTIN comme clé principale lorsqu'il en existe un. Deux enregistrements avec la même référence produit du même fournisseur sont presque certainement un seul produit.

Vérifiez les champs qui comptent pour l'aménagement intérieur. Les données structurées véhiculent rarement des attributs commerciaux tels que les dimensions, la finition ou le délai de livraison ; il faudra donc peut-être une intervention manuelle ou une lecture du texte descriptif. Signalez tout enregistrement manquant de prix ou de SKU pour qu'il ne glisse pas dans un devis en tant que zéro.

Alimentez le devis. Une fois les enregistrements nettoyés, ils doivent être associés à des pièces, et non rester dans une liste plate. Attribuez chaque produit à une pièce, définissez les quantités et laissez les totaux s'accumuler par pièce et par projet. Si vous recherchez un revêtement de sol, par exemple, un ensemble d'enregistrements propres rendra la comparaison des options dans le catalogue de parquets ou une base de données de fournisseurs de parquets beaucoup plus rapide, car chaque candidat présentera les mêmes champs côte à côte.

Pour éviter la plomberie, vous pouvez parcourir le catalogue de produits partagé de plus de 62 000 articles qui comportent déjà des marques, des prix et des dimensions, ou créer un compte Starter gratuit et ajouter votre première URL de fournisseur. Dans un cas comme dans l'autre, le principe reste le même : décidez de vos champs une fois, capturez-les de manière cohérente et laissez les chiffres parler d'eux-mêmes.

À lire aussi