ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo extraer datos de comercio electrónico de múltiples mercados
Tutorial

Cómo extraer datos de comercio electrónico de múltiples mercados

Consulte datos de productos de Amazon y Walmart en un solo canal utilizando la API de Scavio. Normalice esquemas, compare precios y configure alertas de caída de precios.

Obtener clave API gratisDocumentacion API

Extraiga datos de productos de Amazon y Walmart a través de una única API consultando ambas plataformas con la misma búsqueda de productos, normalizando los diferentes esquemas de respuesta en un formato unificado, comparando precios entre mercados y configurando alertas cuando las diferencias de precios superen un umbral. Ejecutar raspadores separados para cada mercado significa mantener dos bases de código, dos grupos de proxy y dos canales de análisis. Una API de búsqueda multiplataforma reduce esto a una base de código con un parámetro de plataforma.

Requisitos previos

  • Python 3.8+ instalado
  • solicita biblioteca instalada
  • Una clave API de Scavio de scavio.dev
  • Una lista de productos para rastrear en los mercados

Guia paso a paso

Paso 1: Definir productos a seguir

Configure la lista de productos y los mercados para consultar cada producto.

Python
import os, requests, json, re

API_KEY = os.environ['SCAVIO_API_KEY']

PRODUCTS = [
    'Sony WH-1000XM5 headphones',
    'Apple AirPods Pro 2',
    'Samsung Galaxy S24 Ultra case',
]
PLATFORMS = ['amazon', 'walmart']

Paso 2: Consultar ambas plataformas

Busque cada producto tanto en Amazon como en Walmart a través de la API multiplataforma de Scavio.

Python
def search_product(product: str, platform: str) -> list:
    resp = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'platform': platform, 'query': product}, timeout=15)
    resp.raise_for_status()
    return resp.json().get('organic_results', [])

def search_all_platforms(product: str) -> dict:
    results = {}
    for platform in PLATFORMS:
        results[platform] = search_product(product, platform)
        print(f'{platform}: {len(results[platform])} results for "{product[:30]}"')
    return results

all_results = search_all_platforms(PRODUCTS[0])

Paso 3: Normalizar el esquema

Asigne los campos de respuesta de Amazon y Walmart a un esquema común para que el código posterior no necesite una lógica específica de la plataforma.

Python
def parse_price(price_str: str) -> float:
    if not price_str:
        return 0.0
    cleaned = re.sub(r'[^\d.]', '', str(price_str))
    try:
        return float(cleaned)
    except ValueError:
        return 0.0

def normalize(result: dict, platform: str) -> dict:
    return {
        'platform': platform,
        'title': result.get('title', ''),
        'price': parse_price(result.get('price', '')),
        'price_raw': result.get('price', ''),
        'rating': result.get('rating', ''),
        'url': result.get('link', ''),
        'image': result.get('thumbnail', result.get('image', '')),
    }

def normalize_all(results: dict) -> list:
    normalized = []
    for platform, items in results.items():
        for item in items[:3]:
            normalized.append(normalize(item, platform))
    return normalized

normalized = normalize_all(all_results)
for n in normalized:
    print(f"{n['platform']:<10} ${n['price']:<8} {n['title'][:50]}")

Paso 4: Comparar precios entre mercados

Encuentre el mejor precio para cada producto en Amazon y Walmart.

Python
def compare_prices(product: str) -> dict:
    results = search_all_platforms(product)
    normalized = normalize_all(results)
    if not normalized:
        return {'product': product, 'best': None}
    priced = [n for n in normalized if n['price'] > 0]
    if not priced:
        return {'product': product, 'best': None, 'note': 'no prices found'}
    best = min(priced, key=lambda x: x['price'])
    worst = max(priced, key=lambda x: x['price'])
    savings = worst['price'] - best['price']
    return {
        'product': product,
        'best': {'platform': best['platform'], 'price': best['price'], 'title': best['title'][:50]},
        'worst': {'platform': worst['platform'], 'price': worst['price']},
        'savings': round(savings, 2),
    }

comp = compare_prices(PRODUCTS[0])
print(f"Best: {comp['best']['platform']} ${comp['best']['price']} (save ${comp['savings']})")

Paso 5: Alerta sobre diferencias de precios

Configure alertas cuando la diferencia de precio entre los mercados supere un umbral.

Python
PRICE_DIFF_THRESHOLD = 10.0  # dollars

def check_alerts(products: list) -> list:
    alerts = []
    for product in products:
        comp = compare_prices(product)
        if comp.get('savings', 0) >= PRICE_DIFF_THRESHOLD:
            alert = {
                'product': product,
                'best_platform': comp['best']['platform'],
                'best_price': comp['best']['price'],
                'savings': comp['savings'],
            }
            alerts.append(alert)
            print(f'ALERT: {product} - save ${alert["savings"]} on {alert["best_platform"]}')
    if not alerts:
        print('No significant price differences found')
    return alerts

check_alerts(PRODUCTS)

Ejemplo en Python

Python
import requests, os, re
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}

def compare(product):
    prices = {}
    for platform in ['amazon', 'walmart']:
        data = requests.post('https://api.scavio.dev/api/v1/search', headers=H,
            json={'platform': platform, 'query': product}).json()
        top = (data.get('organic_results', []) or [{}])[0]
        price = re.sub(r'[^\d.]', '', top.get('price', '0'))
        prices[platform] = float(price) if price else 0
    return prices

print(compare('Sony WH-1000XM5'))

Ejemplo en JavaScript

JavaScript
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
async function compare(product) {
  const prices = {};
  for (const platform of ['amazon', 'walmart']) {
    const r = await fetch('https://api.scavio.dev/api/v1/search', {
      method: 'POST', headers: H, body: JSON.stringify({platform, query: product})
    });
    const top = ((await r.json()).organic_results || [])[0] || {};
    prices[platform] = parseFloat((top.price || '0').replace(/[^\d.]/g, '')) || 0;
  }
  return prices;
}
compare('Sony WH-1000XM5').then(console.log);

Salida esperada

JSON
A unified pipeline that queries Amazon and Walmart for the same products, normalizes the data into a common schema, and alerts on cross-marketplace price differences.

Tutoriales relacionados

  • Cómo crear un rastreador de precios multiplataforma
  • Cómo monitorear los precios de Amazon en múltiples ASIN

Preguntas frecuentes

La mayoria de los desarrolladores completan este tutorial en 15 a 30 minutos. Necesitaras una clave API de Scavio (el plan gratuito funciona) y un entorno de Python o JavaScript.

Python 3.8+ instalado. solicita biblioteca instalada. Una clave API de Scavio de scavio.dev. Una lista de productos para rastrear en los mercados. Una clave API de Scavio te da 50 creditos gratuitos al registrarte.

Si. El plan gratuito incluye 50 creditos al registrarte, mas que suficiente para completar este tutorial y crear un prototipo funcional.

Scavio tiene un paquete nativo de LangChain (langchain-scavio), un servidor MCP y una API REST simple que funciona con cualquier cliente HTTP. Este tutorial usa the raw REST API, pero puedes adaptarlo al framework que prefieras.

Recursos relacionados

Best Of

Las mejores API de productos de Amazon para reemplazar raspadores (2026)

Read more
Best Of

API de investigación de los mejores vendedores de Walmart (2026)

Read more
Use Case

Inteligencia de producto del vendedor de Walmart

Read more
Glossary

Panorama de la API de datos de productos de Walmart (2026)

Read more
Glossary

Panorama de proveedores de API de búsqueda (2026)

Read more
Solution

Canal de inteligencia y seguimiento de productos de Walmart

Read more

Empieza a construir

Consulte datos de productos de Amazon y Walmart en un solo canal utilizando la API de Scavio. Normalice esquemas, compare precios y configure alertas de caída de precios.

Obtener clave API gratuitaLeer la documentacion
ScavioScavio

API de busqueda en tiempo real para agentes de IA. Busca en todas las plataformas, no solo en Google.

Producto

  • Funciones
  • Precios
  • Panel
  • Afiliados

Desarrolladores

  • Documentacion
  • Referencia de API
  • Inicio rapido
  • Integracion MCP
  • Python SDK

Alternativas

  • Alternativa a Tavily
  • Alternativa a SerpAPI
  • Alternativa a Firecrawl
  • Alternativa a Exa

Herramientas

  • Formateador JSON
  • cURL a codigo
  • Contador de tokens
  • Todas las herramientas

© 2026 Scavio. Todos los derechos reservados.

Featured on TAAFT
Terminos de servicioPolitica de privacidad