Custom scraper

Alza Scraper

Alza is the price setter in Czech and Slovak electronics, which makes its shelf price the reference every competitor in those markets reacts to. There is nothing public to read it with. The AI scraper reads the product page instead, turns it into columns you define, and runs on a schedule.

  • alza.cz
  • alza.sk
  • alza.hu
  • alza.at
  • alza.de
Three stages of an Alza run: paste an alza.cz search URL billed on the render plus residential tier at EUR 3.75 per 1,000 pages, because a plain fetch is refused with 403 and a browser lands on a Cloudflare Just a moment challenge; declare price, availability and delivery_date in the Custom Schema builder; and get back one row per product.

How to scrape Alza.cz

Alza is the dominant electronics retailer in Czechia and Slovakia, and unlike a marketplace it sets its own price. That makes it structurally different to scrape and more useful to scrape: there is no buy box and no seller competition to untangle, there is one number, and in those markets it is the number everyone else prices against. If you sell electronics into Czechia or Slovakia and you are not reading Alza daily, you are finding out about its moves from your own sales figures a fortnight later. Alza publishes nothing public for reading prices programmatically, and Scrapewise carries no dedicated Alza endpoint either. What works is the product page. Access is the hard part: we measured it on 30 September 2026 and a plain fetch was refused with a 403, while a real browser landed on a Cloudflare interstitial titled "Just a moment..." rather than the listing. A run therefore has to go through a rendered page from a residential exit.

How alza.cz is laid out

What a run needs to know about Alza before you pick the URLs.

  • Product URLs end in -d{number}.htm

    Product pages look like /{name}-d7927613.htm. The number after -d is the product ID. Category pages end in a different number pattern, so the two are easy to tell apart.

  • Five country shops

    alza.cz, .sk, .hu, .at and .de are separate shops, and the same product often has different prices across them. List each market separately.

  • Discount codes above the price

    Some products show a code (for example ALZADNY10) above the price that only applies in the basket. Record both the shown price and the code price.

  • New, opened and used

    Alza lists opened-box and used items next to new ones. Filter on condition before comparing.

  • Order code on the page

    Every product shows an Order Code (for example RI045b2). It is a stable second key if the URL changes.

What the AI scraper does with an alza.cz link

Three steps, same as any other site. Nothing about Alza is pre-built, which is why it reaches a retailer nobody ships an endpoint for.

  1. Paste the link

    A product page, a brand page, or a category URL with the filters already applied. Alza encodes filters and sort order in the address, so a view you built by hand in the browser is a valid input. Each country site is its own domain, so a Czech and a Slovak view are two links.

  2. You declare the columns

    An Alza pricing job usually wants the current price, any strikethrough or before-discount price, the stock wording, the promised delivery date, whether the item is available for pickup at an Alza box or branch, and the product code Alza prints on the listing. You name those fields yourself in a Custom Schema, or start from the ready Product List schema and add to it.

  3. Schedule it and take the data out

    Run it once or daily. Pull each run by REST API or download it as CSV or Excel. The columns stay the same between runs, so a Czech table lines up with whatever you already collect from other Central European channels.

Set it up once. The data keeps coming.

Save your search once and it runs by itself. Every run lands in your own Scrapewise database, and you pick how to read it.

  1. Set it up once

    Add your ASINs, keywords, places or apps to a scraper in the web app. New accounts get 5 free requests.

  2. Runs on your schedule

    Pick daily, weekly on the days you choose, every few days, or the first or last day of the month. Scheduled runs start at night, European time. Need it more often? Start runs from your own code.

  3. Saved in your database

    Each run adds dated rows, so this week sits next to last week. Rows are kept for 90 days.

  4. Use it your way

    Open the table in the web app and download the latest run as an Excel file. Ask your own AI assistant about it. Or pull the rows into your code with an API key.

Ask your AI assistant about your own data

Connect Claude Desktop or Claude Code with a read-only key. The assistant reads the rows you've already collected, at no extra cost on Scrapewise. With a full-access key it can start a run for you too.

  • Which of my ASINs lost the Buy Box this week?
  • Which competitor cut prices the most since Monday?
  • Show the keywords where I dropped out of the top 10.

What you send and what you get

You send a link and a column list. The price, the stock state and the delivery promise come from the page itself.

You give
  • Link to an alza.cz product, brand or category pagerequired

    Set your filters and sort order in the browser first, then copy the address. Alza encodes them in the URL, so a view you built by hand is a valid input.

    https://www.alza.cz/hledani.htm?exps=philips+hue
  • Your column listrequired
    Custom Schema, 12 fields
  • How often it runsoptional
    • On demand
    • Daily
    • Weekly
    • Monthly

    Daily is the fastest cadence available, and enough to catch a price cut that the rest of the market copies within 48 hours.

You get

One row per product tile in the listing, 6 columns each

  • product_title
  • price
  • currency
  • availability
  • sku
  • source_url

REST API, CSV or Excel. The column set stays the same between runs, so an Alza table lines up with your other Central European channels.

What a run on Alza actually returned

This is real output, not a mock-up. 1 row, collected on 3 October 2026 from live alza.cz product pages through our own engine, the same way one of your runs would. Prices move, so treat the numbers as a sample of shape rather than a current price list.

All 6 columns

  • product_title
  • price
  • currency
  • availability
  • sku
  • source_url

1 sample row, all 6 columns seen across sample calls.

1 sample row, all 6 columns seen across sample calls.
product_titleproduct_titleProduct title as the retailer writes itpricepricePrice the page is charging todaycurrencycurrencyCurrency the page quotedavailabilityavailabilityStock state the page publishedskuskuThe retailer's own product codesource_urlsource_urlThe exact page this row was read from
Apple AirPods 5 s bezdrátovým nabíjecím pouzdrem3990CZKInStockJA940j5bhttps://www.alza.cz/18902952.htm

Column names are ones we chose when declaring the schema for this run. Yours can be named whatever your downstream job already expects. We pointed the run at 14 Alza product pages and 1 came back with a readable price. The rest returned something other than a product page, which is ordinary on this storefront and the reason the tier named above is what it is. We publish what we measured, not what we expect. Columns not shown here — brand — are ones these pages did not publish. An empty cell would have been the honest answer on every row, so we left them out rather than pad the table.

What an alza.cz page costs

Pay-as-you-go from your wallet. No plan, no monthly fee, no seat count.

€3.75per 1,000 pagespay-as-you-go, no plan

Measured on 30 September 2026, not assumed. A plain fetch of an alza.cz URL is refused with a 403 and a 65.7 KB challenge body, and loading the same URL in a real browser landed on a Cloudflare interstitial titled "Just a moment..." rather than the listing. A browser alone is not enough here, so budget for a rendered page coming out of a residential exit.

Worked example

250 alza.cz product pages checked once a day for a month is 7,500 pages.

about EUR 28.13 for the month

You are charged for what a run actually used, not what it was expected to need, and your balance never expires.

See the full price list →

Typical fields the AI scraper extracts from an alza.cz page

A starting point, not a fixed schema. What comes back is whatever the page actually shows on the day of the run.

Price and discount

Alza is a retailer, so there is one price rather than a list of competing offers. What matters is how far it has moved and from what.

  • Current selling price
  • Strikethrough or before-discount price, when shown
  • Discount percentage, when shown
  • Promotion or campaign badge wording
  • Instalment options advertised on the page

Availability and delivery

In Czech and Slovak electronics the delivery promise is part of the offer, and a cheaper price with a three-week wait is not the same offer.

  • Stock wording, including unit counts where Alza gives them
  • Promised delivery date
  • Pickup availability at a branch or Alza box
  • Delivery cost, where the page states it
  • Whether the item is discontinued or awaiting stock

Product and identity

Alza prints its own product code on every listing, which is the most reliable thing on the page to key a comparison on.

  • Product title
  • Brand
  • Alza product code
  • Category breadcrumb
  • Specification table values, where the page prints one
  • Rating and review count
  • Energy class, where the category requires it
  • Product image URL

The column list is one you write: name each field, give it a type and a line telling the AI what to look for. The schema belongs to your account, so an Alza field set can be reused on alza.sk, alza.hu, alza.at and alza.de, or on the next Central European channel you point us at. How Custom Schema works →

What it cannot give you The scraper cannot invent a field the page does not render. Alza's country sites carry different assortments and different currencies, so a cross-market comparison is several scrapers and a conversion step you control. Category pages are paginated, so a category sweep is a list of URLs rather than one request. Historical prices are not on the page and are not stored on our side.

What people use Alza data for

01

Reading the price setter in Czech and Slovak electronics

In those markets Alza moves first and the rest follow. Scraping it daily means you learn about a cut when it happens rather than when your own sell-through drops two weeks later.

02

Brand and RRP monitoring

If you supply Alza, this is how you see what your products are actually listed at, per country site. That is the evidence a commercial conversation needs, with a timestamp on it.

03

Competitor price monitoring in CEE retail

Scraping a category gives you what every competing product costs today, plus its delivery promise. Run it daily and you have a market curve rather than an impression.

04

Availability and delivery-promise tracking

A competitor at a lower price with a three-week delivery date is not undercutting you. Capturing stock wording and promised date alongside price is what makes the comparison honest.

05

Cross-market price checks

The same product frequently carries different prices on alza.cz, alza.sk and alza.at. One schema across those domains turns that into a table instead of an anecdote.

What makes alza.cz harder than an ordinary storefront

The bot wall is the main obstacle. Once you are through it, Alza is simpler than any marketplace on this list.

Access

  • A plain fetch is refused with a 403, so the cheapest tier is not an option
  • A real browser lands on a Cloudflare challenge rather than the listing
  • Runs have to go through a rendered page from a residential exit, which is the most expensive tier
  • Success is high but not guaranteed on any individual run

Retailer, not marketplace

  • One price per product, no buy box and no seller competition to untangle
  • That makes Alza the cleanest reference price in its market and the easiest table to reason about
  • Stock wording carries unit counts, which is a stronger signal than a binary in-stock flag
  • The delivery date is part of the offer and belongs in the comparison

Five country sites

  • alza.cz, alza.sk, alza.hu, alza.at and alza.de are separate sites and need separate scrapers
  • Different currencies per market, so cross-market comparison needs a conversion step you control
  • Assortment differs by market, so a product present in Czechia may not exist in Austria

Scheduling and delivery

  • Daily is the fastest cadence, which matches how often retail prices meaningfully move
  • Every run is retrievable by REST API, or downloadable as CSV or Excel
  • Columns stay stable between runs, so downstream jobs do not need to re-map fields

What to watch on alza.cz

The one thing specific to this site. The general limits — public pages only, no field the page does not show, your URLs rather than a full crawl — are in the custom scrapers FAQ.

  • This one is expensive to run

    Alza refuses a plain fetch and challenges a plain browser, so every run goes through a rendered page from a residential exit at EUR 3.75 per 1,000 pages. If the page count matters to you, scope it before you switch it on rather than after.

  • Five markets are five scrapers

    alza.cz, alza.sk, alza.hu, alza.at and alza.de are separate sites. We do not merge them for you and we do not convert their currencies into one.

  • Daily, not real time

    Daily is the fastest schedule. There is no real-time feed, no per-minute polling and no price-drop alerting.

  • No price history, no SKU matching

    We store nothing about Alza prices on our side, so a price curve starts the day you switch the scraper on. You get Alza's rows as Alza presents them, mapping them to your catalogue is a separate job, and we are not lawyers, so check Alza's terms before you run anything.

FAQ

Alza.cz scraping — questions

What people ask before pointing the scraper at alza.cz.

Not one you can use for this. Alza publishes nothing public for reading product or price data programmatically, and there is no Alza endpoint in our catalogue either. Reading the public product page is the mechanism.

Questions that apply to every site — scheduling, exports, what it will not do — are answered in the custom scrapers FAQ.

Ready to pull Alza data into your stack?

Start free — or talk to our team about your exact fields, refresh cadence and volume.