Top 6 des scrapers de livraison de nourriture: Benchmark & cas d'utilisation
Nous avons évalué 6 fournisseurs de web scraping pour voir comment ils gèrent l'extraction de données de livraison de nourriture, en envoyant 12 000 requêtes au total sur les 4 principales plateformes de livraison de nourriture, et avons mesuré le taux de réussite, le temps d'achèvement et la couverture des métadonnées.
Résultats globaux du benchmark de scraping de données de livraison de nourriture
Voir la section méthodologie du benchmark pour plus de détails sur le processus de test.
Résultats par domaine du benchmark de scraping de données de livraison de nourriture
Quels types de données peuvent être extraites des plateformes de commande de nourriture ?
Différentes plateformes exposent différentes couches de données, telles que les données de menu, les données de magasin et les données produit. Par exemple, dans notre benchmark de scrapers de livraison de nourriture, nous avons extrait des données produit depuis Instacart.
Seul Bright Data a renvoyé une réponse JSON structurée, et nous avons regroupé les 26 champs de métadonnées qu'il a fournis ci-dessous :
Les données de menu incluent généralement les noms des articles, les descriptions, les prix, les remises, les images, les étiquettes diététiques, les calories, les options de personnalisation et la disponibilité.
Les données de restaurant incluent généralement le nom du restaurant, l'adresse, les types de cuisine, les notes et le nombre d'avis, les frais de livraison, la commande minimale, le temps de livraison estimé, les horaires d'ouverture et les promotions actives.
Scrapers de données de livraison de nourriture
Bright Data a été le seul fournisseur à atteindre à la fois le taux de réussite global le plus élevé (94 %) et le temps d'achèvement moyen le plus rapide (11) sur les quatre domaines de livraison de nourriture. Son taux de réussite n'est jamais descendu en dessous de 83 % sur aucun domaine.
Bright Data propose deux produits principaux pour le scraping de données de livraison de nourriture :
Bright Data Web Unlocker API : un point de terminaison de déblocage unique qui gère automatiquement les défis anti-bot, les CAPTCHA et la rotation des proxies, en renvoyant la réponse HTML de la page. Zomato, Uber Eats et iFood ont été envoyés via ce point de terminaison.
Scraper APIs : Bright Data publie des APIs de scraper dédiées et des datasets pré-construits pour des cibles spécifiques. Parmi les domaines de livraison de nourriture que nous avons testés, Instacart était pris en charge via les APIs de scraping Instacart de Bright Data, avec quatre produits prêts à l'emploi au catalogue :
- Produits Instacart collecte par URL : prend une URL de produit Instacart.
- Produits Instacart découverte par URL de catégorie : prend une URL de page de catégorie.
- Schéma unifié des produits Instacart collecte par URL : identique au collecteur par URL, avec un schéma de sortie normalisé.
- Schéma unifié des produits Instacart découverte par URL de catégorie : identique au découvreur de catégorie, avec un schéma de sortie normalisé.
Toutes renvoient du JSON structuré avec les métadonnées complètes du produit telles que le nom, la marque, la description, le prix, le nom du magasin et les notes. Nous avons utilisé la variante Collect by URL pour Instacart.
Oxylabs s'est classé parmi les fournisseurs les plus fiables, avec le deuxième meilleur taux de réussite global de 91 % sur les quatre domaines de livraison de nourriture. Sur Instacart, il est arrivé à égalité avec Bright Data et Decodo avec un taux de réussite de 100 %, mais a obtenu le temps d'achèvement le plus rapide sur cette plateforme avec 10s. Son temps d'achèvement global moyen était de 27s.
Oxylabs propose une API Web Scraper avec plusieurs modes d'intégration (Realtime, Push-Pull, Proxy Endpoint). Avec le point de terminaison Realtime, source=universal plus render=html rend la page dans un navigateur headless et renvoie la réponse HTML.
Il fournit également des sources dédiées pour des sites spécifiques. Pour Instacart, il en existe trois :
instacart_product: prend un identifiant de produit et renvoie du JSON analysé avec les métadonnées complètes du produit.instacart_search: scrape les résultats de recherche Instacart pour un mot-clé donné.instacart: accepte n'importe quelle URL Instacart.
Les URL Instacart sont passées par instacart_product dans le benchmark de scraping de données de livraison de nourriture.
Decodo s'est classé parmi les fournisseurs les plus cohérents, avec le troisième meilleur taux de réussite global de 90 % et un temps d'achèvement moyen de 29s sur les quatre domaines de livraison de nourriture. Il a obtenu le taux de réussite le plus élevé sur UberEats avec 94 %, mais a été le fournisseur le plus lent dans l'ensemble avec une moyenne de 29s.
Decodo fournit une seule API Web Scraper (v2) qui gère toutes les cibles de livraison de nourriture via un seul point de terminaison. La requête prend une URL, un paramètre target défini sur universal, et un drapeau headless défini sur html afin que la page soit rendue dans un vrai navigateur avant que le HTML ne soit renvoyé. Le contournement anti-bot, la rotation des proxies et le rendu sont gérés du côté de Decodo.
Il n'existe pas de points de terminaison dédiés ni de datasets pré-construits pour les plateformes de livraison de nourriture individuelles.
Nimble s'est classé parmi les fournisseurs les plus rapides, avec le deuxième temps d'achèvement global le plus rapide de 14s sur les quatre domaines de livraison de nourriture.
Nimble s'est classé parmi les fournisseurs les plus rapides, avec le deuxième temps d'achèvement global le plus rapide de 14s sur les quatre domaines de livraison de nourriture. Il a obtenu le taux de réussite le plus élevé sur iFood avec 98 % et a égalé Bright Data avec un taux de réussite de 100 % sur Zomato. Cependant, son taux de réussite global de 85 % est resté en deçà des meilleurs, principalement en raison de performances plus faibles sur UberEats (67 %) et Instacart (74 %).
Nimble ne propose pas d'APIs dédiées pour les plateformes de livraison de nourriture, donc chaque URL est passée par l'API Extract générale. Le point de terminaison accepte n'importe quelle URL avec un drapeau render: true et un pilote de navigateur furtif (vx10 dans notre configuration), et renvoie la page sous forme de HTML rendu, avec le contournement anti-bot, la rotation des proxies et l'exécution de JavaScript gérées dans la pile de Nimble.
Zyte s'est classé deuxième plus bas en termes de taux de réussite global avec une moyenne de 82 % sur les quatre domaines de livraison de nourriture, bien qu'il ait obtenu un temps d'achèvement moyen modéré de 18s. Sa meilleure performance a été sur iFood avec un taux de réussite de 96 %, où il s'est classé deuxième derrière Nimble. Cependant, il a éprouvé des difficultés sur Instacart avec un taux de réussite de 62 %, le résultat le plus bas parmi tous les fournisseurs sur cette plateforme.
Il adopte une approche à point de terminaison unique. La même Zyte API traite chaque requête, et le comportement est contrôlé par des drapeaux sur la charge utile. Le réglage browserHtml: true lance un navigateur headless, exécute le JavaScript de la page et renvoie le HTML entièrement rendu, ce qui est le seul mode produisant une sortie exploitable pour les sites de livraison de nourriture rendus côté client. Ce drapeau est resté activé pour chaque URL de livraison de nourriture que nous avons extraite.
Apify s'est classé dernier sur les deux indicateurs, avec un taux de réussite moyen de 56 % et le temps d'achèvement le plus lent de 41s sur les quatre domaines de livraison de nourriture. Il a complètement échoué sur Instacart. Sa meilleure performance a été sur Zomato avec un taux de réussite de 89 %, bien qu'il se soit classé dernier parmi les fournisseurs ayant des résultats non nuls sur chaque plateforme individuelle testée.
Apify adopte une approche différente. Au lieu d'un point de terminaison universel unique, il fonctionne sur une marketplace d'Actors, chacun étant un scraper autonome pour un site spécifique. Aucune des plateformes de livraison de nourriture du benchmark de scraping de données de livraison de nourriture ne dispose d'un Actor Apify de première partie, nous avons donc utilisé l'Actor Web Scraper à usage général (apify/web-scraper) sur chaque cible. Nous avons donc utilisé l'Actor Web Scraper à usage général (apify/web-scraper) sur chaque cible.
Web Scraper ouvre chaque URL dans un navigateur Chrome headless, exécute une fonction de page JavaScript que nous écrivons et renvoie le résultat sous forme de JSON, avec rotation des proxies via Apify Proxy et rendu JS complet.
Une différence importante : le JSON d'Apify n'est pas un schéma de produit intégré. L'API Instacart Scraper de Bright Data renvoie un ensemble fixe de champs (nom du produit, marque, prix, ingrédients, chaîne de magasins, etc.) que Bright Data analyse de son côté. Avec le Web Scraper d'Apify, le JSON contient uniquement les champs que nous définissons dans la fonction de page.
Défis du scraping de données de livraison de nourriture
Les outils de web scraping permettent aux entreprises d'extraire les menus, les prix, les notes et les stocks depuis des plateformes comme Zomato, Uber Eats, iFood et Instacart. Quelques défis récurrents apparaissent sur toutes.
Rendu côté client : La plupart des sites de livraison de nourriture sont des applications monopages construites avec React, Next.js ou Angular, et une grande partie du contenu visible n'est pas dans le HTML initial. Les pages produit de DoorDash, par exemple, affichent le produit réel dans une modale qui ne s'ouvre qu'après l'hydratation JavaScript. Les scrapers sans véritable couche navigateur renvoient la coquille du magasin sans données produit.
Géo-blocage : iFood est restreint au Brésil et refuse la plupart des IP non brésiliennes. Un fournisseur peut passer tous les contrôles anti-bot et échouer quand même sur ce domaine si son pool de proxies ne dispose pas d'IP résidentielles brésiliennes stables.
Détection des bots : Instacart et DoorDash se trouvent derrière des systèmes agressifs de détection de bots (Cloudflare sur DoorDash, systèmes de classe DataDome / PerimeterX sur Instacart) qui combinent défis JavaScript, empreinte comportementale et limitation du débit par compte. Les scrapers HTTP génériques obtiennent des 403s ou des pages de défi bloquées, c'est pourquoi chaque fournisseur de notre benchmark s'appuie sur une couche intégrée de déblocage et de rendu JavaScript pour ces cibles.
Stabilité des sessions : Sur les tâches de pagination longues, les sessions résidentielles persistantes avec de longs TTL réduisent les blocages en cours d'exécution. La rotation trop agressive des IP en cours de défilement fait perdre le cookie de session et oblige le site à réafficher la première page.
Méthodologie du benchmark de scraping de données de livraison de nourriture
Nous avons testé 6 fournisseurs de web scraping sur 4 plateformes de livraison de nourriture : Zomato, Uber Eats, iFood et Instacart.
Ces plateformes ont été sélectionnées sur la base des sites de livraison de nourriture les mieux classés de Tranco. Chaque plateforme a fourni 500 URL uniques de produits ou de magasins collectées à partir de flux de catalogue réels, pour un total de 2 000 URL et de 12 000 requêtes sur l'ensemble des fournisseurs.
Dataset de livraison de nourriture
Le dataset comprenait 500 URL par plateforme. Chaque URL était une page réelle et en ligne au moment de l'exécution. Les URL ont été dédupliquées et le dataset est resté identique entre les fournisseurs pour garantir une comparaison équitable.
Configuration du benchmark de livraison de nourriture
Tous les fournisseurs ont été appelés en utilisant les configurations qu'ils recommandent pour des pages web arbitraires : points de terminaison universels avec rendu JavaScript activé lorsque disponible.
Pour deux cas, nous avons utilisé des APIs dédiées plutôt que le point de terminaison universel, car le fournisseur prend explicitement en charge la cible. Bright Data a été appelé via son API Instacart Dataset, qui renvoie du JSON structuré, et Oxylabs a été appelé via sa source instacart_product avec l'identifiant du produit, qui renvoie également du JSON structuré.
Chaque requête a été envoyée comme un appel unique au fournisseur. Les fournisseurs ont été testés séquentiellement, un par un, afin d'éviter de mélanger la pression de limitation de débit entre les services. Les réponses HTTP 429 déclenchaient un back-off automatique de 30 secondes et étaient réessayées jusqu'à 3 fois.
Qu'est-ce qui compte comme un scraping réussi
Une requête n'était considérée comme valide que si toutes les conditions suivantes étaient réunies. Premièrement, le fournisseur devait renvoyer un statut HTTP 2xx, 3xx ou 404 ; tout le reste, y compris les blocages 4xx et les erreurs 5xx, comptait comme un échec.
Deuxièmement, pour les réponses 200, le parseur devait extraire au moins un des champs cibles de la plateforme à partir du contenu renvoyé. La méthode d'extraction dépendait du format de la réponse. Pour les fournisseurs renvoyant du HTML brut (Decodo, Oxylabs Web Unblocker, Nimble, Zyte et Apify), nous avons utilisé des sélecteurs CSS ciblant les conteneurs de données structurées de produits ou de restaurants sur chaque plateforme. Pour les fournisseurs renvoyant du JSON structuré (l'API Instacart Scraper de Bright Data et la source instacart_product d'Oxylabs), nous lisons les champs équivalents directement depuis la réponse JSON sans avoir besoin de sélecteurs CSS. Pour Zomato, Uber Eats et iFood, le parseur recherchait l'un des champs suivants : titre, note, libellé de note ou fourchette de prix. Pour Instacart, il recherchait l'un des champs suivants : nom du produit, marque, description ou un prix numérique positif.
Troisièmement, les pages qui se chargeaient avec succès mais représentaient une annonce supprimée (HTML contenant des expressions telles que « introuvable », « plus disponible » ou « restaurant introuvable ») étaient comptées comme valides, car le fournisseur avait fait son travail et le contenu avait simplement disparu.
Les réponses 3xx et 404 étaient traitées comme une réussite automatique (auto-pass) : le fournisseur prouvait qu'il pouvait atteindre la page, et l'absence de données produit était une propriété de l'URL, pas du scraper.
Ce que nous avons mesuré
Pour chaque requête, le runner enregistrait la réussite de la validation sous forme de booléen, le temps de bout en bout en secondes écoulées entre la soumission et le moment où la réponse était exploitable, et le total des métadonnées comme le nombre de champs présents dans le résultat analysé.
Citer cette recherche
Choisissez le format qui correspond à votre lieu de publication. Coller la version avec lien dans votre CMS préserve le lien retour.
@misc{sipi2026,
author = {Şipi, Nazlı},
title = {{Top 6 des scrapers de livraison de nourriture: Benchmark & cas d'utilisation}},
year = {2026},
month = sep,
howpublished = {\url{https://aimultiple.com/scrape-food-delivery-data}},
note = {AIMultiple. Consulté le 29 septembre 2026}
}Résultats et horodatages de 15.5 mille points de données. Téléchargez les données de synthèse présentées dans les graphiques et les tableaux de cet article sous forme de fichier ZIP contenant 2 fichiers CSV et un README.
Vous voulez les données détaillées derrière ? Rejoindre Premium
Journal des modifications
3 mises à jourAjout d'un benchmark de scraping de livraison de repas avec 6 fournisseurs, taux de réussite, temps de réponse et résultats par fournisseur.
Ajout d'une section méthodologie du benchmark couvrant les 6 fournisseurs, 4 plateformes, 2 000 URL, jeu de données, configuration, règles de validité et métriques.
Une figure et sa source ont été supprimées de la section « Évaluations\Avis ».
Soyez le premier à commenter
Votre adresse courriel ne sera pas publiée. Tous les champs sont obligatoires. Les commentaires sont laissés dans leur langue d'origine.