Tesco Scraper: Czech Republic, Hungary, Slovakia, Ireland avatar

Tesco Scraper: Czech Republic, Hungary, Slovakia, Ireland

Pricing

from $2.00 / 1,000 result scrapeds

Go to Apify Store
Tesco Scraper: Czech Republic, Hungary, Slovakia, Ireland

Tesco Scraper: Czech Republic, Hungary, Slovakia, Ireland

Scrape Tesco groceries in the Czech Republic, Hungary, Slovakia or Ireland: product names, prices in CZK, HUF or EUR, Clubcard offers, price per unit, EAN codes, images, ratings and categories. Search by keyword, scrape one category or walk the full catalogue. No login, no cookies.

Pricing

from $2.00 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

7

Total users

0

Monthly active users

17 days ago

Last modified

Categories

Features

Limited permissions

Share

Tesco Groceries Scraper (Czech Republic, Hungary, Slovakia, Ireland)

Scrape the Tesco grocery range of the Czech Republic, Hungary, Slovakia or Ireland: product names, prices, Clubcard offers, price per unit, EAN codes, images, ratings, stock and full category paths. Pick a country, then search by keyword, scrape one category, or walk the entire catalogue. No login, no cookies.

Supported countries

countrySiteCurrencyExample keyword
CZ (default)nakup.itesco.czCZKmléko
HUbevasarlas.tesco.huHUFtej
SKpotravinydomov.itesco.skEURmlieko
IEwww.tesco.ieEURmilk

One run covers one country. Every row carries a country and a currency field, so you can combine the datasets of several runs. Prices are never converted.

Tesco UK is a separate actor: Tesco Groceries Scraper (UK).

Why use this actor?

Tesco is one of the largest grocers in each of these four countries, and its online shop is one of the biggest public price datasets in each market. This actor gives you a structured feed of the Tesco grocery catalogue for price monitoring, competitor benchmarking, product matching, market research, or a grocery price comparison across Central Europe and Ireland. You get the same data the Tesco website shows shoppers, including Clubcard prices, without an account or a delivery slot.

The record shape is the same for all four countries. A product from Hungary has the same fields as a product from Ireland, so cross-country comparison needs no mapping.

Keyword searches go to Tesco's own search API, the same one the site uses. Search runs are fast and return structured data including the real brand name. Category and full-catalogue runs read the listing data embedded in Tesco's rendered pages, including the exact product total for every category.

Every Tesco listing is capped at 10,000 results, so one broad crawl can silently truncate a large department. This actor walks the category tree (superdepartment → department → aisle → shelf). Whenever a listing's total hits the cap, the actor descends into the child categories until every listing stays under 10,000. Products are deduplicated by Tesco product id (TPNC), and the run ends with a completeness check that compares the distinct products per category against Tesco's own totals.

The Tesco sites sit behind a bot-protection wall, so ordinary scrapers are rejected before any product loads. For category scraping this actor sends every request through the Bright Data Web Unlocker with an exit in the selected country. Bright Data access is built in and included in the per-result price. Keyword search does not need Bright Data.

How to scrape Tesco data

  1. Add this actor to your Apify account.
  2. Set country to CZ, HU, SK or IE. Without it the actor scrapes the Czech Republic.
  3. Choose what to scrape:
    • Set searchQuery to scrape a keyword in the language of the country, e.g. mléko (CZ), tej (HU), mlieko (SK) or milk (IE).
    • Set categoryUrl to scrape one category, as a slug or as a full URL. See the examples below.
    • Or paste a list of listing URLs into startUrls.
    • Leave all three empty to walk the whole grocery catalogue of the country.
  4. Set maxProducts to cap the run (default 100, prefilled 20 for a quick test). Set it high, e.g. 30000, for a full-catalogue pull.
  5. Run the actor. Results stream to the dataset and can be exported as JSON, CSV or Excel, or read through the API.

Category slugs per country:

CountrySlug exampleFull URL example
CZbakery or bakery/sweet-pastryhttps://nakup.itesco.cz/shop/en-CZ/browse/bakery/all
HUtejtermek-tojas/allhttps://bevasarlas.tesco.hu/shop/hu-HU/browse/tejtermek-tojas/all
SKpekaren/allhttps://potravinydomov.itesco.sk/shop/sk-SK/browse/pekaren/all
IEbakery/breadhttps://www.tesco.ie/shop/en-IE/browse/bakery/bread

A full Tesco URL names its own country. If the URL belongs to another country than the country input, the actor scrapes the country of the URL. All URLs in one run must belong to the same country.

For category runs the actor reads the product total of every listing and paginates 200 products per page. Set enumerateOnly: true to walk the tree and report the exact catalogue size without scraping products. That is a cheap way to check the size of a full run before you start it.

Input

FieldTypeRequiredDescription
countryStringNoCZ (default), HU, SK or IE
searchQueryStringNoSearch Tesco groceries by keyword (no Bright Data needed)
categoryUrlStringNoA Tesco category URL or slug to scrape
startUrlsArrayNoOne or more Tesco listing URLs, all from the same country
maxProductsIntegerNoMaximum products to return (default 100, maximum 100,000)
brightDataApiKeyString (secret)NoYour own Bright Data Web Unlocker API key for category and full-catalogue runs. Leave empty to use the built-in access.
enumerateOnlyBooleanNoWalk the tree and report the catalogue size without scraping products
requestDelaySecsIntegerNoMinimum pause between category page fetches (for very large paced runs)
proxyConfigurationObjectNoProxy settings for the search API. A proxy country of CZ, HU, SK or IE follows the selected country.

Example input

A keyword search in Hungary:

{
"country": "HU",
"searchQuery": "tej",
"maxProducts": 100
}

A category run in Ireland:

{
"country": "IE",
"categoryUrl": "bakery/bread",
"maxProducts": 500
}

The full Slovak catalogue:

{
"country": "SK",
"maxProducts": 30000,
"requestDelaySecs": 15
}

Output

FieldTypeExampleDescription
nameStringTesco Roll 43gProduct name
brandStringTescoBrand name (search API) or own-brand detection
priceNumber2.9Current shelf price
currencyStringCZKCZK (CZ), HUF (HU) or EUR (SK, IE)
countryStringCZCZ, HU, SK or IE
pricePerUnitString67.44 Kč/kgUnit price in the local format: 67.44 Kč/kg, 289 HUF/l, €2.80/kg
discountStringClubcard PriceClubcard or promotion text, only when the product has an offer
eanString02167700000000Barcode (GTIN) where available
skuString200151875Tesco base product number (TPNB)
productIdString200151875Tesco consumer product number (TPNC)
inStockBooleantrueAvailability. Absent when Tesco does not state it.
ratingNumber3.8Average review rating (0-5), only for reviewed products
reviewCountInteger4Number of reviews, only for reviewed products
categoryStringBakery > Loose pastry > Savory Pastry > RollsFull category path
categoriesArray["Bakery", "Loose pastry"]The category path as a list
imageUrlStringhttps://digitalcontent.api.tesco.com/...Primary product image
urlStringhttps://nakup.itesco.cz/shop/en-CZ/products/200151875Product page URL
scrapedAtString2026-10-13T12:00:00.000ZTimestamp

Example output

{
"name": "Riska UHT tej 2,8% 1 l",
"brand": "Riska",
"price": 289,
"currency": "HUF",
"country": "HU",
"pricePerUnit": "289 HUF/l",
"ean": "05998200564338",
"sku": "120502935",
"productId": "120502935",
"inStock": true,
"rating": 5,
"reviewCount": 3,
"imageUrl": "https://digitalcontent.api.tesco.com/v2/media/ghs/873dff8f-900a-43d3-b8e3-8f1cbd7bc973/fbe57feb-d888-415a-92df-2ff8b34a3671.jpeg",
"category": "Tejtermék-tojás > Tejek, tejitalok > Tartós tejek > 2,8%-3,5% zsírtartalmú tejek",
"categories": ["Tejtermék-tojás", "Tejek, tejitalok", "Tartós tejek", "2,8%-3,5% zsírtartalmú tejek"],
"url": "https://bevasarlas.tesco.hu/shop/hu-HU/products/120502935",
"scrapedAt": "2026-10-13T18:42:25.364Z"
}

Cost estimate

The price is $0.002 per result ($2 per 1,000 products) plus $0.005 per run start, for every country. Bright Data access for category runs is included in that price.

A keyword search returns up to 200 products per request. A category page also holds up to 200 products, so a full-catalogue pull of one country needs a few hundred page fetches.

A run's usage cost only settles after the run reports SUCCEEDED. Reading the cost of a run that is still in progress shows a number that is far too low, so estimate spend from finished runs.

  • Tesco Groceries Scraper (UK) covers the Tesco UK grocery catalogue with the same completeness check.
  • The other Studio AMBA grocery and supermarket scrapers use the same field names, so their datasets combine with this one for cross-market price comparison.

Limitations / known issues

  • One run covers one country. Run the actor once per country for a multi-country dataset.
  • The Tesco websites do not expose historical prices. Each run captures a snapshot. Use scheduled runs to build a price history.
  • rating and reviewCount are only present for products that have reviews.
  • The discount field carries the promotion text exactly as Tesco publishes it, in the language of the country.
  • Category names are in the language of the site. On the Czech site a keyword search returns Czech category names and a category run returns English ones.
  • Category scraping goes through the Bright Data Web Unlocker. Access is built in, so no Bright Data account is needed.
  • A full-catalogue walk is a long run. The actor saves its progress and survives Apify server migrations: already-pushed products are never duplicated and completed categories are skipped on resume.
  • None of the four sites has a third-party marketplace today. If Tesco adds one, the own-range guard keeps marketplace items out of the output.
⌂ 换网址