Passer au contenu principal
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 Firecrawl.

Configuration

npm install firecrawl zod

Aperçu

Lors du scraping d’Amazon, vous voudrez généralement :
  • Extraire les informations sur les produits (titre, prix, disponibilité)
  • Obtenir les avis et notes des clients
  • Surveiller les variations de prix
  • Rechercher des produits de manière programmatique
  • Suivre les fiches produits des concurrents

Scraper en mode JSON

Extrayez des données produit structurées à l’aide de schémas Zod.
import { Firecrawl } from 'firecrawl';
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 firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

const result = await firecrawl.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);
Trouvez des produits sur Amazon.
import { Firecrawl } from 'firecrawl';

const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

const searchResult = await firecrawl.search('gaming laptop site:amazon.com', {
    limit: 10,
    sources: [{ type: 'web' }], // { type: 'news' }, { type: 'images' }
    scrapeOptions: {
        formats: ['markdown']
    }
});

console.log(searchResult);

Scraper

Récupérer les données d’une seule page produit Amazon.
import { Firecrawl } from 'firecrawl';

const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

const result = await firecrawl.scrape('https://www.amazon.com/ASUS-ROG-Strix-Gaming-Laptop/dp/B0DZZWMB2L', {
    formats: ['markdown'], // par ex. html, links, etc.
    onlyMainContent: true
});

console.log(result);

Map

Découvrez toutes les URL disponibles sur les pages produit ou catégorie d’Amazon. Remarque : Map retourne uniquement des URL, sans contenu.
import { Firecrawl } from 'firecrawl';

const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

const mapResult = await firecrawl.map('https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics');

console.log(mapResult.links);
// Renvoie un tableau d'URL sans contenu

Crawl

Explorer plusieurs pages d’une catégorie Amazon ou de résultats de recherche Amazon.
import { Firecrawl } from 'firecrawl';

const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

const crawlResult = await firecrawl.crawl('https://www.amazon.com/s?k=mechanical+keyboards', {
    limit: 10,
    scrapeOptions: {
        formats: ['markdown']
    }
});

console.log(crawlResult.data);

Scraping par lots

Scraper plusieurs URL de produits Amazon simultanément.
import { Firecrawl } from 'firecrawl';

const firecrawl = new Firecrawl({ apiKey: process.env.FIRECRAWL_API_KEY });

// Attendre la fin
const job = await firecrawl.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);