Zalando Scraper - Products, Prices, Sizes, Images, Reviews avatar

Zalando Scraper - Products, Prices, Sizes, Images, Reviews

Pricing

from $1.00 / 1,000 product scrapeds

Go to Apify Store
Zalando Scraper - Products, Prices, Sizes, Images, Reviews

Zalando Scraper - Products, Prices, Sizes, Images, Reviews

Scrape Zalando products: name, brand, current and original price, discount, sizes, images, deal flags and rating, plus full description, colour, per-size availability and reviews on detail. Search by keyword with sort and filters, or paste any category, search or product URL.

Pricing

from $1.00 / 1,000 product scrapeds

Rating

0.0

(0)

Developer

Abot API

Abot API

Maintained by Community

Actor stats

0

Bookmarked

8

Total users

4

Monthly active users

14 days ago

Last modified

Share

Zalando Scraper: Prices, Sizes, Deals and Reviews

Zalando Scraper turns Zalando's catalogue into structured product data. Get name, brand, current and original price, savings, every size, all images, deal flags and rating from each listing, plus the full description, colour, per-size availability and individual reviews when you turn on detail enrichment. Search by keyword with sorting and a price range, browse the sale section, or paste any Zalando category, search-result or product URL. Covers 17 Zalando country stores, and results export to JSON, CSV or Excel, or read straight through the API.

Why This Scraper?

  • Full page coverage. Every product on a category or search page is collected, not just the first screen.
  • Rich price data on every record. Current price, was price, savings amount and percent, discount percent, an on-special flag and the listing's own deal badge.
  • Keyword search with filters. Search terms, sort order (relevance, price, newest) and a price range, applied consistently whether you search by keyword or paste a URL.
  • Browse the sale section. Pick the women's or men's sale collection and it's walked with the same listing machinery as a keyword search, currently on the co.uk and ie stores.
  • Optional detail enrichment. Full description, colour, per-size price and availability, every image, rating summary and individual reviews.
  • 17 country stores. One input switches the store, language, currency and catalogue.
  • Optional export to your other apps. Push scraped products into Notion, Airtable or Linear through MCP connectors, alongside the dataset.

Use Cases

  • Price monitoring teams: track current price, was price and discount percent across products to catch markdowns.
  • Competitor and market research: compare brand assortment, pricing and sizes across Zalando's country stores.
  • Deal and sale trackers: browse the sale section or filter search results to on-sale products only.
  • Catalogue and marketplace builders: pull structured product data, images, sizes and descriptions, to power a storefront or feed.
  • Review and rating analysis: collect individual reviews and rating summaries when detail enrichment is on.

Data You Get

Sample shape: values are illustrative placeholders, not from a live listing.

FieldExample
skuAB123C4D5-E11
nameSample Jersey Dress
brandSample Brand
titleSample Brand Sample Jersey Dress
urlhttps://www.zalando.co.uk/sample-dress-ab123c4d5-e11.html
domainco.uk
targetGroupWOMEN
categoryDRESS
price14.0
originalPrice15.99
wasPrice15.99
savingsAmount1.99
savingsPercent12
discountPercentage12
isOnSpecialtrue
onSaletrue
currencyGBP
dealFlag-12%
sizes["XS","S","M","L","XL"]
images["https://img01.ztat.net/article/00000000-500x700.jpg"]
rating4.6
availabletrue
scrapedAt2026-01-01T00:00:00.000Z
itemthe complete upstream product-card object

Full-price products return wasPrice: null, savingsAmount: null and isOnSpecial: false; these fields are never fabricated when there is no genuine reduction. All prices are in the store's own currency and in whole units, not cents. When fetchDetails is on, the same record also carries description, color, variants (one entry per size, with its own price and availability), reviews, reviewCount, shipping and returnPolicy; without it those fields are absent rather than empty.

How to Use

  1. Pick a mode: search (build queries from keywords) or url (paste category, search-result or product links).
  2. Fill in the fields for that mode: keywords, country store, sort and price range, or the URLs to scrape.
  3. Turn on Fetch full product details if you want description, colour, per-size availability and reviews.
  4. Set Max items to control run size and cost, then click Start.

Basic keyword search:

{
"mode": "search",
"searchTerms": ["summer dress"],
"domain": "co.uk",
"maxListings": 50
}

Search with sorting and a price range:

{
"mode": "search",
"searchTerms": ["trainers"],
"domain": "de",
"sortBy": "price_asc",
"minPrice": 30,
"maxPrice": 80,
"onSaleOnly": true,
"maxListings": 100
}

Browse the women's sale (co.uk or ie store):

{
"mode": "search",
"searchTerms": [],
"domain": "co.uk",
"specialsCategory": "womens-sale",
"maxListings": 50
}

Category URL with detail enrichment:

{
"mode": "url",
"urls": ["https://www.zalando.co.uk/womens-clothing-dresses/"],
"fetchDetails": true,
"maxPages": 3,
"maxListings": 200
}

Run it from your code

Python:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("abotapi/zalando-scraper").call(run_input={
"mode": "search",
"searchTerms": ["summer dress"],
"domain": "co.uk",
"maxListings": 50,
})
for product in client.dataset(run["defaultDatasetId"]).iterate_items():
print(product["name"], product["price"])

JavaScript:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('abotapi/zalando-scraper').call({
mode: 'search',
searchTerms: ['summer dress'],
domain: 'co.uk',
maxListings: 50,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

Or connect it to Make, Zapier, n8n, Google Sheets or webhooks from the Integrations tab.

Send results into your apps (MCP connectors)

Optionally pipe the scraped products into the apps you already use, via Model Context Protocol (MCP) connectors. This is an extra delivery step after the scrape: the Apify dataset is never changed.

What gets written to the connector: a condensed, human-readable summary of each product, not the full JSON. Each product becomes one entry with a title and its key fields flattened to plain text. The complete record always stays in the Apify dataset.

  1. Authorize a connector once under Apify, Settings, Integrations (Notion, Linear, Airtable, or Apify).
  2. Select it in the "Export to your apps (MCP)" input field. If the picker is empty, you have not authorized a connector yet.
  3. For Notion, also set notionParentPageUrl to the page where product pages should be created.

The connection is mediated by Apify's MCP proxy, so this actor never sees your third-party credentials. Leave the field empty to write only to the dataset.

Input Parameters

ParameterTypeDefaultDescription
modestringsearchsearch to build queries from keywords and filters, or url to scrape pasted category, search-result or product URLs directly.
searchTermsarray[] (prefill: ["dress"])Keywords to search Zalando for, e.g. "summer dress", "nike air max". Search mode only.
domainstringco.ukZalando country store: co.uk, de, fr, nl, be, it, es, pl, at, ch, se, dk, fi, no, ie, cz, com. Used in search mode; URL mode reads the store from the pasted URL.
specialsCategorystringnoneBrowse the sale section in addition to keywords: womens-sale or mens-sale. Verified working only on the co.uk and ie stores; other stores are skipped with a log warning, no charge. Search mode only.
sortBystringrelevancerelevance, price_asc, price_desc or newest. Applies in both search and URL mode; choosing an order other than relevance replaces any order a pasted URL already carried.
minPriceintegernoneKeep only products with a current price at or above this value (store currency). Applies in both search and URL mode.
maxPriceintegernoneKeep only products with a current price at or below this value (store currency). Applies in both search and URL mode.
onSaleOnlybooleanfalseKeep only products that are currently discounted. Applies in both search and URL mode.
urlsarray[] (prefill: a sample category URL)Category, search-result or product URLs to scrape. URL mode only; the price range and on-sale filters still apply, other search-only fields are ignored.
fetchDetailsbooleanfalseAdd full description, colour, per-size price and availability, every image, rating summary and individual reviews from each product page.
maxReviewsinteger20Maximum individual reviews captured per product when Fetch full product details is on.
maxPagesintegernone (unlimited)Safety bound on result pages walked per keyword or URL. Leave empty or 0 for unlimited; this does not cap the number of products, Max items still does.
maxListingsinteger20Maximum number of products to return across the whole run. Set 0 for unlimited.
proxyobjectApify Proxy (useApifyProxy: true)Connection settings. Works by default; enable the residential group for more IP rotation.
mcpConnectorsarray[]Optional: send a summary of each product to apps you authorized under Integrations.
notionParentPageUrlstringnoneNotion connector only: page under which product pages are created.
maxNotifyListingsintegernone (the actor applies 50 when left empty)Optional cap on how many products are pushed to the selected MCP connectors.

Output Example

Sample shape: values are illustrative placeholders, not from a live listing.

{
"sku": "AB123C4D5-E11",
"name": "Sample Jersey Dress",
"brand": "Sample Brand",
"title": "Sample Brand Sample Jersey Dress",
"url": "https://www.zalando.co.uk/sample-dress-ab123c4d5-e11.html",
"domain": "co.uk",
"targetGroup": "WOMEN",
"category": "DRESS",
"price": 14.0,
"originalPrice": 15.99,
"wasPrice": 15.99,
"savingsAmount": 1.99,
"savingsPercent": 12,
"discountPercentage": 12,
"isOnSpecial": true,
"onSale": true,
"currency": "GBP",
"dealFlag": "-12%",
"sizes": ["XS", "S", "M", "L", "XL"],
"images": ["https://img01.ztat.net/article/00000000-500x700.jpg"],
"rating": 4.6,
"available": true,
"description": "Full product description appears here when fetchDetails is on.",
"color": "navy/blue",
"variants": [{ "size": "M", "sku": "SAMPLE000-M000", "currency": "EUR", "price": "14.00", "availability": "https://schema.org/InStock" }],
"reviews": [{ "author": "Jane Doe", "rating": 5, "body": "Sample review text." }],
"reviewCount": 1,
"scrapedAt": "2026-01-01T00:00:00.000Z"
}

Plan Requirement

The default proxy setting works out of the box, and the actor automatically escalates the connection if one is refused. For large or frequent runs, the residential proxy group gives more headroom; pick it under Connection.

FAQ

How much does it cost?

You pay per record returned. Detail enrichment (the fields added by Fetch full product details) is billed separately, only for the products it actually enriched. The Pricing tab shows current rates. Use Max items to cap the cost of any run.

This actor collects only publicly available product data. You are responsible for how you use it: follow Zalando's terms and the laws that apply to you, and get legal advice if you plan commercial redistribution. Product names, prices and sizes are generally facts, but brand names, photos and descriptions may be subject to third-party rights.

Can I schedule recurring runs, or get only new products?

Yes, schedule the actor from the Schedules tab to run on a recurring basis. There is no built-in incremental mode: each run returns the current matching products fresh, without comparing against a previous run, so a product can appear again on a later run if it is still listed. Deduplication by product id only happens within a single run.

Why did Browse sale return nothing for my store?

The sale section is verified working only on the co.uk and ie stores. On every other store the sale page is not reachable through its localized path, so the run skips it with a log warning instead of charging for an empty result. Use keyword search or category URLs on those stores instead.

Why did my run return an empty dataset instead of failing?

If every request for your keywords or URL is blocked, or your search genuinely has no matches, the actor finishes successfully with an empty dataset and a status message explaining why, rather than throwing an error. Check the status message and the run log: try different keywords, a broader price range, or confirm the URL is a valid Zalando category, search-result or product page.

Can I use it with AI agents or MCP?

Yes. Call it from any Apify integration or MCP client, and use the connector field to push scraped products into Notion, Airtable or Linear.

πŸ”— Want more e-commerce data?

Pair this actor with these related scrapers from the same team:

πŸ›’ Target AU Scraper
Scrape products and customer reviews from Target.com.au. Search by keyword or use...
πŸ›’ Kmart Scraper
Scrape products and customer reviews from Kmart.com.au. Search by keyword or use...
πŸ‘— Zara Scraper
Scrape Zara (zara.com) products: current price plus strike-through Rebajas (sale)...
πŸ‘— ASOS Scraper
Scrape ASOS by keyword, category or URL. Every row carries the selling price and the...
πŸ‘— Myer Scraper
Scrape Myer (myer.com.au) department-store products: name, brand, price, was-price...
πŸ‘— 24S Scraper
Scrape 24S luxury fashion by category, filters, or URL. Extract brand, name, price...

πŸ‘‰ Browse all abotapi scrapers

πŸ’¬ Support & custom scrapers

  • 🐞 Found a bug or a missing field? Open a ticket on the Issues tab. We usually reply within hours.
  • πŸ› οΈ Need another site, extra fields or a private build? Email abotapi@proton.me or message Telegram @abotapi.
  • ⭐ Enjoying it? A quick review on the actor page helps other users find it.