Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.firecrawl.dev/llms.txt

Use this file to discover all available pages before exploring further.

Amazon es uno de los sitios de comercio electrónico más analizados mediante scraping. Esta guía te muestra cómo extraer de forma eficaz datos de productos, precios, reseñas y resultados de búsqueda usando las potentes funciones de Firecrawl.

Configuración

npm install firecrawl zod

Resumen

Al hacer scraping en Amazon, normalmente querrás:
  • Extraer información de productos (título, precio, disponibilidad)
  • Obtener reseñas y valoraciones de clientes
  • Supervisar cambios de precio
  • Buscar productos de forma programática
  • Hacer seguimiento de los listados de la competencia

scraping con modo JSON

Extrae datos de productos estructurados usando esquemas de Zod.
import { Firecrawl } from 'firecrawl';
import { z } from 'zod';

// Definir esquema de 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)
    }],
});

// Parsear y validar con Zod
const jsonData = typeof result.json === 'string' ? JSON.parse(result.json) : result.json;
const validated = ProductSchema.parse(jsonData);

console.log('✅ Datos del producto validados:');
console.log(validated);
Encuentra productos en 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);

Scraping

Extrae datos de una única página de producto de 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'], // p. ej. html, links, etc.
    onlyMainContent: true
});

console.log(result);

Map

Descubre todas las URL disponibles en páginas de producto o de categoría de Amazon. Nota: Map solo devuelve las URL, sin contenido.
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);
// Devuelve un array de URLs sin contenido

Rastreo

Rastrea varias páginas de categorías o resultados de búsqueda de 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 por lotes

Haz scraping de varias URL de productos de Amazon a la vez.
import { Firecrawl } from 'firecrawl';

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

// Esperar finalización
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);