Scraper de Sephora (Global)
Apify Actor que extrae datos completos de producto de Sephora — variantes, precios, imágenes, ingredientes y reseñas — de tiendas de Sephora en EE. UU., Canadá, 9 mercados de la UE, 6 mercados de Oriente Medio, el Reino Unido, India y 10 mercados de Asia-Pacífico, en un único esquema normalizado.
características clave
Un solo actor para EE. UU., Canadá, 9 mercados de la UE, 6 mercados de Oriente Medio, el Reino Unido, India y 10 mercados de APAC
Mercado autodetectado — pega cualquier URL sephora.* y el dispatcher la enruta al módulo correcto
Ejecuciones multimercado combinadas — URLs de US + EU + SEA en una sola lista startUrls, transmitidas a un único dataset etiquetado con `market`
Precios correctos por configuración regional — la divisa propia de cada tienda (24 en total, desde USD y EUR hasta AED e INR), tal como la devuelve la propia capa de localización de Sephora
Esquema normalizado — cada mercado emite la misma forma `source / brand / title / options / variants / medias / stats`
Aislamiento de sesión por mercado — el estado de autenticación no puede contaminarse entre regiones
Circuit breaker global — 50 fallos consecutivos interrumpen la ejecución para no desperdiciar cómputo en un objetivo caído
casos de uso
- Inteligencia de precios panregional en los mercados de belleza de EE. UU., la UE y APAC
- Monitorización de disponibilidad y surtido de producto entre mercados
- Análisis competitivo para marcas que se lanzan en nuevas regiones de Sephora
- Comparación de ingredientes entre formulaciones regionales
- Seguimiento de reseñas y valoraciones — incluyendo señales de wishlist de SEA y resúmenes de sentimiento por IA de US
- Auditorías de precios de fidelización/membresía por mercado
parámetros de entrada
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
startUrls | array | obligatorio | URLs de producto o categoría de cualquier tienda sephora.*. El mercado se detecta automáticamente a partir del hostname. |
market | string | opcional | Anulación opcional de mercado (us, eu-fr, eu-it, eu-de, eu-es, eu-pl, eu-ro, eu-pt, eu-cz, eu-gr, mena-ae, mena-sa, mena-bh, mena-om, mena-kw, mena-qa, uk, in, sea-nz, sea-au, sea-sg, sea-my, sea-th, sea-id, sea-ph, sea-hk, sea-tw, sea-bn). |
locale | string | opcional | Configuración regional BCP 47 opcional (por ejemplo fr-FR, en-NZ) — anula el valor por defecto del mercado. |
categoryIds | array | opcional | EU, Oriente Medio, Reino Unido e India. IDs de categoría en el formato propio de cada mercado (p. ej. C479 en las tiendas de la UE) — alternativa a pegar URLs de categoría. |
onlyNewProducts | boolean | opcional | Solo productos añadidos recientemente: un filtro del lado del servidor en US/Canadá y FR, IT, DE, ES, PL, RO, PT; páginas de listado ordenadas por más nuevo primero en SEA e India. No es compatible en el resto. |
newProductsPageLimit | number | opcional | Páginas de listado por categoría cuando onlyNewProducts se ejecuta en SEA o India. Por defecto 3. |
advancedFilter | string | opcional | Solo listados de categoría de US/Canadá: una expresión de refinamiento en bruto como filters[isNew]=true. |
proxy | object | opcional | Configuración de Apify Proxy. Se recomienda encarecidamente residencial; fija apifyProxyCountry al mercado objetivo. |
maxConcurrency | number | opcional | Solicitudes concurrentes. Por defecto 5. US: 2-5. EU: 3. SEA: 8-16. |
maxRequestsPerCrawl | number | opcional | Límite máximo global en todos los mercados. 0 = sin límite. |
Mercados admitidos
| Región | ID de mercado | País | Divisa | Hostname |
|---|---|---|---|---|
| América | us | Estados Unidos | USD | sephora.com |
| América | us | Canadá | CAD | sephora.ca |
| UE | eu-fr | Francia | EUR | sephora.fr |
| UE | eu-it | Italia | EUR | sephora.it |
| UE | eu-de | Alemania | EUR | sephora.de |
| UE | eu-es | España | EUR | sephora.es |
| UE | eu-pl | Polonia | PLN | sephora.pl |
| UE | eu-cz | Chequia | CZK | sephora.cz |
| UE | eu-gr | Grecia | EUR | sephora.gr |
| UE | eu-ro | Rumanía | RON | sephora.ro |
| UE | eu-pt | Portugal | EUR | sephora.pt |
| Oriente Medio | mena-ae | Emiratos Árabes Unidos | AED | sephora.me/ae-en |
| Oriente Medio | mena-sa | Arabia Saudita | SAR | sephora.me/sa-en |
| Oriente Medio | mena-bh | Baréin | BHD | sephora.me/bh-en |
| Oriente Medio | mena-om | Omán | OMR | sephora.me/om-en |
| Oriente Medio | mena-kw | Kuwait | KWD | sephora.me/kw-en |
| Oriente Medio | mena-qa | Catar | QAR | sephora.me/qa-en |
| Reino Unido | uk | Reino Unido | GBP | sephora.co.uk |
| India | in | India | INR | sephora.in |
| APAC | sea-nz | Nueva Zelanda | NZD | sephora.nz |
| APAC | sea-au | Australia | AUD | sephora.com.au |
| APAC | sea-sg | Singapur | SGD | sephora.sg |
| APAC | sea-my | Malasia | MYR | sephora.com.my |
| APAC | sea-th | Tailandia | THB | sephora.co.th |
| APAC | sea-id | Indonesia | IDR | sephora.co.id |
| APAC | sea-ph | Filipinas | PHP | sephora.ph |
| APAC | sea-hk | Hong Kong | HKD | sephora.hk |
| APAC | sea-tw | Taiwán | TWD | sephora.tw |
| APAC | sea-bn | Brunéi | BND | sephora.bn |
Ejemplo de salida
1{
2 "market": "sea-nz",
3 "source": {
4 "id": 58792,
5 "canonicalUrl": "https://www.sephora.nz/products/rare-beauty-true-to-myself-natural-matte-longwear-foundation",
6 "retailer": "SEPHORA",
7 "currency": "NZD"
8 },
9 "brand": "Rare Beauty",
10 "title": "True To Myself Natural Matte Longwear Foundation",
11 "description": "<p>A self-priming and self-setting foundation...</p>",
12 "ingredients": "Aqua/Water, Cyclopentasiloxane, Glycerin...",
13 "currentSku": "770225",
14 "categories": ["makeup/face/foundation"],
15 "options": [
16 { "name": "shade", "id": "66488", "values": [{"value": "1 Fair Neutral", "orderable": true}] }
17 ],
18 "variants": [
19 {
20 "id": "276343",
21 "sku": "770225",
22 "price": { "current": 77.0, "original": 77.0, "stockStatus": "IN_STOCK" },
23 "options": [{"name": "shade", "value": "1 Fair Neutral"}],
24 "highlights": ["NEW", "Only at Sephora"],
25 "wishlisted": null
26 }
27 ],
28 "medias": [{ "url": "https://www.sephora.nz/.../foundation-shade.jpg", "type": "image" }],
29 "stats": { "reviewCount": 971, "rating": 4.8, "lovesCount": null }
30}
Consejos
- Fija el país del proxy al mercado objetivo. Una salida residencial en un país no coincidente es, con diferencia, la mayor fuente de errores 403. Establece
apifyProxyCountrycon el código ISO de la tienda (US,FR,NZ, etc.). - Haz primero una prueba de humo (smoke test). Establece
maxRequestsPerCrawl=10antes de tu primera ejecución de producción en un mercado nuevo. - Ajusta la concurrencia por región. US: 2-5. EU: 3. SEA: 8-16. Cada mercado obtiene su propio semáforo en las ejecuciones combinadas.
faq
¿Qué tiendas de Sephora admite este scraper?
¿Puedo extraer varios mercados en una sola ejecución?
¿Cómo gestiona el scraper la protección anti-bot?
¿Seguirán funcionando mis configuraciones de ejecución v1.x de US existentes?
¿Por qué algunos campos son null en los datos de SEA?
¿Necesito tokens de API o cuentas separadas por mercado?
relacionado en ~/ecommerce
Scraper de ASOS — Precios, stock por talla, reseñas y categorías
Todos los productos y categorías de ASOS: precios, stock por talla, códigos de barras y reseñas en 12 tiendas.
abrirScraper de WooCommerce — productos, precios, stock y reseñas
Productos, variaciones, stock y reseñas de cualquier tienda WooCommerce.
abrirTalabat Mart Scraper — Precios y SKU de Supermercado en Dubái
SKU, precios y stock real de las dark stores de Talabat Mart en Dubái.
abrir