Amazon est l’un des sites de e-commerce les plus scrappés. Ce guide vous montre comment extraire efficacement des données produits, des prix, des avis et des résultats de recherche en utilisant les puissantes fonctionnalités de Evocrawl.
npm install @mendable/evocrawl-js zod
Lors du scraping d’Amazon, vous chercherez généralement à :
- Extraire les informations sur le produit (titre, prix, disponibilité)
- Récupérer les avis et notes des clients
- Surveiller les variations de prix
- Rechercher des produits de manière programmatique
- Suivre les fiches produits des concurrents
Extrayez des données produit structurées à l’aide de schémas Zod.
import EvocrawlApp from '@mendable/evocrawl-js';
import { z } from 'zod';
// Définir le schéma Zod
const ProductSchema = z.object({
title: z.string(),
price: z.string(),
rating: z.number(),
availability: z.string(),
features: z.array(z.string())
});
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const result = await evocrawl.scrape('https://www.amazon.com/dp/B0DZZWMB2L', {
formats: [{
type: 'json',
schema: z.toJSONSchema(ProductSchema)
}],
});
// Parser et valider avec Zod
const jsonData = typeof result.json === 'string' ? JSON.parse(result.json) : result.json;
const validated = ProductSchema.parse(jsonData);
console.log('✅ Données produit validées :');
console.log(validated);
Rechercher des produits sur Amazon.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const searchResult = await evocrawl.search('gaming laptop site:amazon.com', {
limit: 10,
sources: [{ type: 'web' }], // { type: 'news' }, { type: 'images' }
scrapeOptions: {
formats: ['markdown']
}
});
console.log(searchResult);
Récupérer les données d’une seule page produit Amazon.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const result = await evocrawl.scrape('https://www.amazon.com/ASUS-ROG-Strix-Gaming-Laptop/dp/B0DZZWMB2L', {
formats: ['markdown'], // par ex. html, links, etc.
onlyMainContent: true
});
console.log(result);
Découvrez toutes les URL disponibles sur les pages de produit ou de catégorie Amazon. Remarque : Map retourne uniquement des URL, sans contenu.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const mapResult = await evocrawl.map('https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics');
console.log(mapResult.links);
// Renvoie un tableau d'URL sans contenu
Explorer plusieurs pages issues d’une catégorie Amazon ou de résultats de recherche Amazon.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const crawlResult = await evocrawl.crawl('https://www.amazon.com/s?k=mechanical+keyboards', {
limit: 10,
scrapeOptions: {
formats: ['markdown']
}
});
console.log(crawlResult.data);
Scraper plusieurs URL de produits Amazon simultanément.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
// Attendre la fin
const job = await evocrawl.batchScrape([
'https://www.amazon.com/ASUS-ROG-Strix-Gaming-Laptop/dp/B0DZZWMB2L',
'https://www.amazon.com/Razer-Blade-Gaming-Laptop-Lightweight/dp/B0FP47DNFQ',
'https://www.amazon.com/HP-2025-Omen-Gaming-Laptop/dp/B0FL4RMGSH'],
{
options: {
formats: ['markdown']
},
pollInterval: 2,
timeout: 120
}
);
console.log(job.status, job.completed, job.total);
console.log(job);