Tesco Scraper — UK & Ireland Grocery Products & Prices avatar

Tesco Scraper — UK & Ireland Grocery Products & Prices

Pricing

from $4.00 / 1,000 result scrapeds

Go to Apify Store
Tesco Scraper — UK & Ireland Grocery Products & Prices

Tesco Scraper — UK & Ireland Grocery Products & Prices

Scrape the full Tesco UK and Tesco Ireland groceries catalogue: product names, GBP/EUR 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 $4.00 / 1,000 result scrapeds

Rating

0.0

(0)

Developer

Studio Amba

Studio Amba

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Tesco Ireland Groceries Scraper

Scrape Tesco Ireland's grocery range: product names, EUR 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 Ireland's largest grocers, and its online range is one of the biggest price datasets in Irish retail. This actor gives you a clean, structured feed of the Tesco Ireland 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 tesco.ie 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 Ireland sits behind Akamai Bot Manager with hard IP-reputation blocking, so ordinary scrapers get an "Access Denied" before any product loads. For category scraping this actor routes every request through the Bright Data Web Unlocker, which solves the Akamai 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 Ireland data

  1. Add this actor to your Apify account.
  2. Choose what to scrape:
    • Set searchQuery to scrape a keyword, e.g. milk or bread. This path needs no Bright Data key.
    • Set categoryUrl to scrape one category, e.g. bakery/bread or a full https://www.tesco.ie/shop/en-IE/browse/... URL.
    • Or paste a list of listing URLs into startUrls.
    • Leave everything empty to walk the whole grocery catalogue (all 10 grocery superdepartments).
  3. For category or full-catalogue runs, provide a Bright Data API key (field brightDataApiKey, stored as a secret) or set the BRIGHT_DATA_API_KEY environment variable.
  4. Set maxProducts to cap the run (default 100, prefilled 20 for a quick test). Set it high, e.g. 25000, for a full-catalogue pull.
  5. 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

FieldTypeRequiredDescription
searchQueryStringNoSearch Tesco Ireland groceries by keyword (no Bright Data key needed)
categoryUrlStringNoA Tesco Ireland category URL or slug to scrape
startUrlsArrayNoOne or more Tesco Ireland listing URLs
maxProductsIntegerNoMaximum products to return (default 100)
brightDataApiKeyString (secret)For categoriesBright Data Web Unlocker API key. Falls back to BRIGHT_DATA_API_KEY env var.
enumerateOnlyBooleanNoWalk the tree and report the authoritative catalogue size without scraping products
requestDelaySecsIntegerNoMinimum pause between category page fetches (for very large paced runs)
proxyConfigurationObjectNoProxy settings for the search API path

Example input

{
"searchQuery": "milk",
"maxProducts": 100
}

Or a category run:

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

Output

FieldTypeExampleDescription
nameStringBrennans Family Pan Premium White Sliced Bread 800gProduct name
brandStringBrennansBrand name (search API) or own-brand detection
priceNumber2.09Current shelf price in EUR
currencyStringEURAlways EUR
pricePerUnitString€2.61/kgUnit price
discountString€1.50 Clubcard PriceClubcard / promotion text if present
eanString05011059000014Barcode (GTIN) where available
skuString55014303Tesco base product number (TPNB)
productIdString250330059Tesco consumer product number (TPNC)
inStockBooleantrueAvailability flag
ratingNumber4.5Average review rating (0-5)
reviewCountInteger12Number of reviews
categoryStringBakery > Bread > White BreadFull category path
imageUrlStringhttps://digitalcontent.api.tesco.com/...Primary product image
urlStringhttps://www.tesco.ie/shop/en-IE/products/250330059Product page URL
scrapedAtString2026-07-06T12:00:00.000ZTimestamp

Example output

{
"name": "Brennans Family Pan Premium White Sliced Bread 800g",
"brand": "Brennans",
"price": 2.09,
"currency": "EUR",
"pricePerUnit": "€2.61/kg",
"ean": "05011059000014",
"sku": "55014303",
"productId": "250330059",
"inStock": true,
"rating": 3,
"reviewCount": 2,
"imageUrl": "https://digitalcontent.api.tesco.com/v2/media/ghs/2f343343-9591-4f09-93a7-1623f582d969/7cb13f8c-82e8-4e39-822c-9ea73b9d2447_716249531.jpeg",
"category": "Bakery > Bread > White Bread",
"categories": ["Bakery", "Bread", "White Bread"],
"url": "https://www.tesco.ie/shop/en-IE/products/250330059",
"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 roughly 15,000-20,000 unique products needs only a few hundred unlocker requests.

Limitations / known issues

  • Tesco Ireland's website does 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.
  • 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 Ireland 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.