Mango Scraper - Prices, Rebajas, Variants & Composition
Pricing
from $1.00 / 1,000 product results
Mango Scraper - Prices, Rebajas, Variants & Composition
Scrape Mango (shop.mango.com) fashion products: current price plus strike-through Rebajas (sale) discount, full colour/size variant matrix, section and category, and (with full detail) composition, care, materials, origin, fit and per-size availability. Search by keyword or Rebajas, or paste links.
Pricing
from $1.00 / 1,000 product results
Rating
0.0
(0)
Developer
Abot API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Mango Product Scraper
Pull product data from Mango (shop.mango.com), the global fashion retailer. Search by keyword or browse the site's own Rebajas (sale) feed, or paste product and listing links directly. Every record includes the current price, the strike-through original price with computed discount when a product is marked down, and the full colour/size variant matrix -- with per-size availability and composition/care/materials/fit when you ask for full detail.
Why This Scraper?
- Was-price and discount, structured, straight from Mango's own pricing service. When a product is marked down, both prices are captured plus the discount percentage and Mango's own promotion label.
- Rebajas, first class. A
specialsOnlytoggle browses Mango's own, real, queryable Rebajas (sale) catalog with genuine server-side pagination -- not a guessed category. Mango Outlet is a separate site and out of scope here. - Full colour/size matrix. Every colourway and size Mango sells for a product, each colour with its own price/discount and image gallery; with full detail on, each size also carries real-time availability (in stock, last units, or delayed).
- Composition, care, materials, origin and fit. With
fetchDetailson, every product also returns its fabric composition, wash-care instructions, a material breakdown by percentage, country of origin, and garment fit measurements. - Two ways in. Keyword search or Rebajas browse, or paste any product/category link and continue pagination automatically.
- Optional export to your apps. Send results into Notion, Linear, Airtable, or any Apify MCP connector alongside the dataset.
Data You Get
| Field | Example value |
|---|---|
| productId | 123456 |
| name | Sample Linen Trousers |
| brand / section | Mango, Women |
| category / families | Trousers, [{"id": "26", "label": "Trousers", "labelEn": "Trousers"}] |
| url | https://shop.mango.com/es/es/p/mujer/pantalones/sample-linen-trousers/123456 |
| price / currency | 19.99, EUR |
| originalPrice / discountAmount / discountPercent | 29.99, 10.00, 33.4 |
| isOnSpecial / promoLabel | true, PROMOCION HASTA REBAJAS |
| colors[] | [{"id": "99", "label": "Black", "rgb": "36,36,36", "sizes": [{"id": "36", "label": "36", "plusSize": false, "available": true, "isDelayed": false, "lastUnits": false}], "images": [...], "price": 19.99, ...}] |
| compositions / care / materials | ["Composition: 55% linen, 45% viscose"], ["Machine wash max 30°C"], [{"name": "LINEN", "percent": 55}, {"name": "VISCOSE FSC", "percent": 45}] |
| originCountry | China |
| measures | ["Inseam 76 cm", "Side length 104 cm"] |
| reviews | {"averageRating": null, "totalReviewCount": 0, "items": []} |
Sample shape: values above are illustrative placeholders, not from a live product.
How to Use
1. Keyword search, default market and section (Women, Spain):
{"mode": "search","searchTerm": "vestido","maxItems": 20}
2. Browse the UK men's Rebajas feed:
{"mode": "search","market": "gb/en","section": "MEN","specialsOnly": true,"maxItems": 50,"maxPages": 5}
3. Full product detail (composition, care, per-size availability) for a pasted product link:
{"mode": "url","urls": ["https://shop.mango.com/es/es/p/mujer/sample-linen-trousers/123456"],"fetchDetails": true}
4. Paste a category/Rebajas listing and keep paginating forward:
{"mode": "url","urls": ["https://shop.mango.com/es/es/c/mujer/rebajas--70/93ea7423"],"maxItems": 100,"maxPages": 10}
Input Parameters
| Parameter | Type | Description |
|---|---|---|
mode | string | search or url. |
market | string | Mango's own market path prefix, e.g. es/es, gb/en (search mode only; a pasted URL carries its own market). |
section | string | WOMEN or MEN (search mode only). Other Mango sections can still be scraped via pasted URLs. |
searchTerm | string | Keyword (search mode only). Mango's own search results page does not paginate. |
specialsOnly | boolean | Browse Mango's real Rebajas catalog for the chosen section instead of keyword search (search mode only). |
minPrice / maxPrice | number | Price band to keep, in the market's own currency. |
urls | array | Product or category/Rebajas listing URLs to scrape (url mode only). |
fetchDetails | boolean | Fetch composition, care, materials, origin, fit measures, and per-size availability. |
maxPages | integer | Cap on result pages per Rebajas/URL entry; empty = unlimited. Keyword search is always one page. |
maxItems | integer | Cap on total products returned; 0 = unlimited. |
proxy | object | Connection settings. This actor always uses Apify RESIDENTIAL underneath regardless of this setting -- see the note below. |
mcpConnectors | array | Optional MCP connectors to export results into (Notion, Linear, Airtable, Apify). |
notionParentPageUrl | string | Notion connector only: page under which item pages are created. |
maxNotifyListings | integer | Cap on items exported to each connector per run. Does not affect the dataset. |
Output Example
{"productId": "123456","name": "Sample Linen Trousers","brand": "Mango","section": "Women","collection": "OI2026","model": "SACO","category": "Trousers","families": [{ "id": "26", "label": "Trousers", "labelEn": "Trousers" }],"url": "https://shop.mango.com/es/es/p/mujer/pantalones/sample-linen-trousers/123456","price": 19.99,"currency": "EUR","originalPrice": 29.99,"discountAmount": 10.0,"discountPercent": 33.4,"isOnSpecial": true,"promoLabel": "PROMOCION HASTA REBAJAS","image": "https://media.mango.com/is/image/punto/123456-99-002","defaultColorId": "99","colors": [{"id": "99","label": "Black","rgb": "36,36,36","sizes": [{ "id": "36", "label": "36", "plusSize": false, "available": true, "isDelayed": false, "lastUnits": false }],"images": [{ "code": "002", "url": "https://media.mango.com/is/image/punto/123456-99-002", "alt": "Sample Linen Trousers" }],"price": 19.99,"currency": "EUR","originalPrice": 29.99,"discountAmount": 10.0,"discountPercent": 33.4,"isOnSpecial": true,"promoLabel": "PROMOCION HASTA REBAJAS"}],"compositions": ["Composition: 55% linen, 45% viscose"],"care": ["Machine wash max 30°C, short spin", "Do not bleach"],"materials": [{ "name": "LINEN", "percent": 55 }, { "name": "VISCOSE FSC", "percent": 45 }],"originCountry": "China","measures": ["Inseam 76 cm", "Side length 104 cm"],"lastUnits": false,"isSellable": true,"isUniqueSize": false,"reviews": { "averageRating": null, "totalReviewCount": 0, "items": [] }}
Sample shape: values above are illustrative placeholders, not from a live product.
A note on reviews, sort, and brand/filters
Mango does not surface customer reviews on its product pages -- reviews is always returned as an empty structure rather than omitted or guessed. No server-side sort parameter was found on any Mango listing or search route in live testing, so none is exposed here rather than faking one. Mango is a single-brand shop, so there is no brand filter -- every record's brand is Mango.
A note on proxy and cost
Mango's site has a strict anti-bot layer on every route. This actor always connects over a residential proxy internally (matched to your requested market's country), regardless of the proxy input -- a datacenter connection is IP-reputation blocked here. Residential traffic is billed at a materially higher rate than datacenter; factor this into large runs.
Send results into your apps (MCP connectors)
Optionally pipe results into the apps you already use through Model Context Protocol (MCP) connectors. Authorize a connector once under Apify, Settings, Integrations, then select it in the mcpConnectors field. Each connector receives a condensed, human-readable summary per product (name plus key fields), while the complete record always stays in the Apify dataset. For Notion, set notionParentPageUrl to the page the item pages should be created under, and use maxNotifyListings to cap how many items are exported per connector per run. Supported connectors: Notion, Linear, Airtable, and Apify. Leave the field empty to skip; it never changes the dataset output.