Tesco Czech Republic Scraper — Grocery Products & Prices
Pricing
from $2.00 / 1,000 result scrapeds
Tesco Czech Republic Scraper — Grocery Products & Prices
Scrape the full Tesco Czech Republic groceries catalogue: product names, CZK prices, Clubcard offers, price per unit, EAN codes, images, ratings and categories. Search by keyword, walk the department tree or scrape one category. No login, no cookies.
Pricing
from $2.00 / 1,000 result scrapeds
Rating
0.0
(0)
Developer
Studio Amba
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Tesco Czech Republic Groceries Scraper
Scrape Tesco Czech Republic's grocery range: product names, CZK prices, Clubcard offers, price per unit, EAN codes, images, ratings, stock and full category paths. Search by keyword, scrape one category, or walk the entire catalogue. No login, no cookies.
Why use this actor?
Tesco is one of the Czech Republic's largest grocers, and its online range (nakup.itesco.cz) is one of the biggest price datasets in Czech retail. This actor gives you a clean, structured feed of the Tesco Czech grocery catalogue for price monitoring, competitor benchmarking, product matching, market research, or building a grocery price comparison. You get the same data the Tesco website shows shoppers, including Clubcard prices, without needing an account or a delivery slot.
Two data paths, both first-class. Keyword searches go straight to Tesco's own search API, the same one the site uses, so search runs are fast and return clean structured data including the real brand name. Category and full-catalogue runs read the authoritative listing data embedded in Tesco's rendered pages, including the exact product total for every category.
Complete past the 10,000 cap. Every Tesco listing is capped at 10,000 results, so a single broad crawl can silently truncate large departments. This actor walks the category tree (superdepartment → department → aisle → shelf) and, whenever a node's total hits the cap, descends into its child categories until every listing stays under 10,000. Products are deduped by Tesco product id (TPNC), and the run ends with a self-checking completeness assertion that compares per-category distinct coverage against the authoritative totals.
Tesco Czech Republic sits behind a bot-protection wall, so ordinary scrapers get rejected before any product loads. For category scraping this actor routes every request through the Bright Data Web Unlocker, which solves the protection challenge and returns the fully rendered page, so you get reliable results run after run. Keyword search does not need Bright Data at all.
How to scrape Tesco Czech Republic data
- Add this actor to your Apify account.
- Choose what to scrape:
- Set
searchQueryto scrape a keyword, e.g.mléko(milk) orchléb(bread). This path needs no Bright Data key. - Set
categoryUrlto scrape one category, e.g.bakeryorbakery/sweet-pastry, or a fullhttps://nakup.itesco.cz/shop/en-CZ/browse/...URL. - Or paste a list of listing URLs into
startUrls. - Leave everything empty to walk the whole grocery catalogue (all grocery superdepartments).
- Set
- For category or full-catalogue runs, provide a Bright Data API key (field
brightDataApiKey, stored as a secret) or set theBRIGHT_DATA_API_KEYenvironment variable. - Set
maxProductsto cap the run (default 100, prefilled 20 for a quick test). Set it high, e.g.25000, for a full-catalogue pull. - Run the actor. Results stream to the dataset and can be exported as JSON, CSV, Excel or fed to an API.
For category runs the actor reads the authoritative product total of every listing and paginates 200 products per page. Whenever a listing's total hits Tesco's 10,000 cap, the actor drills into that category's children so no shelf is ever truncated. Set enumerateOnly: true to walk the tree and report the exact catalogue size without scraping products, a cheap way to verify completeness before a full run.
Input
| Field | Type | Required | Description |
|---|---|---|---|
searchQuery | String | No | Search Tesco Czech Republic groceries by keyword (no Bright Data key needed) |
categoryUrl | String | No | A Tesco Czech Republic category URL or slug to scrape |
startUrls | Array | No | One or more Tesco Czech Republic listing URLs |
maxProducts | Integer | No | Maximum products to return (default 100) |
brightDataApiKey | String (secret) | For categories | Bright Data Web Unlocker API key. Falls back to BRIGHT_DATA_API_KEY env var. |
enumerateOnly | Boolean | No | Walk the tree and report the authoritative catalogue size without scraping products |
requestDelaySecs | Integer | No | Minimum pause between category page fetches (for very large paced runs) |
proxyConfiguration | Object | No | Proxy settings for the search API path |
Example input
{"searchQuery": "mléko","maxProducts": 100}
Or a category run:
{"categoryUrl": "bakery/sweet-pastry","maxProducts": 500}
Output
| Field | Type | Example | Description |
|---|---|---|---|
name | String | Tesco Roll 43g | Product name |
brand | String | Tesco | Brand name (search API) or own-brand detection |
price | Number | 2.9 | Current shelf price in CZK |
currency | String | CZK | Always CZK |
pricePerUnit | String | 67.44 Kč/kg | Unit price |
discount | String | Clubcard Price | Clubcard / promotion text if present |
ean | String | 02167700000000 | Barcode (GTIN) where available |
sku | String | 200151875 | Tesco base product number (TPNB) |
productId | String | 200151875 | Tesco consumer product number (TPNC) |
inStock | Boolean | true | Availability flag |
rating | Number | 3.8 | Average review rating (0-5) |
reviewCount | Integer | 4 | Number of reviews |
category | String | Bakery > Loose pastry > Savory Pastry > Rolls | Full category path |
imageUrl | String | https://digitalcontent.api.tesco.com/... | Primary product image |
url | String | https://nakup.itesco.cz/shop/en-CZ/products/200151875 | Product page URL |
scrapedAt | String | 2026-07-06T12:00:00.000Z | Timestamp |
Example output
{"name": "Tesco Roll 43g","brand": "Tesco","price": 2.9,"currency": "CZK","pricePerUnit": "67.44 Kč/kg","ean": "02167700000000","sku": "200151875","productId": "200151875","inStock": true,"rating": 3.8,"reviewCount": 4,"imageUrl": "https://digitalcontent.api.tesco.com/v2/media/ghs/eee4737d-db37-4180-8572-605292d79de9/c82dfc06-82d9-4153-8c71-22bfc05a2485.jpeg","category": "Bakery > Loose pastry > Savory Pastry > Rolls","categories": ["Bakery", "Loose pastry", "Savory Pastry", "Rolls"],"url": "https://nakup.itesco.cz/shop/en-CZ/products/200151875","scrapedAt": "2026-07-06T12:00:00.000Z"}
Cost estimate
Keyword searches fetch up to 200 products per request, so even large keyword pulls cost only a few cents of platform usage. Category runs go through the Bright Data Web Unlocker (about $0.0015 per page fetch on Bright Data's side) and also return up to 200 products per page, so a full-catalogue pull of the Czech grocery range needs only a few hundred unlocker requests.
Related Scrapers
- Tesco Groceries Scraper (UK) — the full Tesco UK grocery catalogue, same completeness engine.
- Tesco Ireland Groceries Scraper — the Irish Tesco grocery range in EUR.
- Building a wider grocery price dataset? Pair these with the rest of the Studio AMBA grocery and supermarket scrapers for cross-market price comparison.
Limitations / known issues
- Tesco Czech Republic's website does not expose historical prices; each run captures a snapshot (use scheduled runs to build a price history).
ratingandreviewCountare only present for products that have reviews.- The
discountfield carries the promotion text exactly as Tesco publishes it. - Category scraping requires a Bright Data Web Unlocker key; keyword search does not.
- A full-catalogue walk is a long run. The actor persists its progress and survives Apify server migrations: already-pushed products are never duplicated and completed categories are skipped on resume.
- Tesco Czech Republic currently has no third-party marketplace; if Tesco ever adds one, this actor's own-range guard will keep marketplace items out of the output.