Tesco Products Scraper
Pricing
from $1.00 / 1,000 results
Tesco Products Scraper
Harvest Tesco product data fast: prices, ratings, availability, and descriptions. Built for price monitoring, market research, and competitive intelligence. Perfect for retail analytics and e-commerce insights at scale.
Pricing
from $1.00 / 1,000 results
Rating
5.0
(3)
Developer
Shahid Irfan
Maintained by CommunityActor stats
2
Bookmarked
15
Total users
7
Monthly active users
15 days ago
Last modified
Categories
Share
What does Tesco Products Scraper do?
Tesco Products Scraper is a Tesco product scraper and data extractor for collecting structured grocery listings from Tesco search, category, and tag-style pages. Provide a public Tesco groceries listing URL, choose the result limit, and receive product titles, brands, prices, unit pricing, promotions, ratings, availability, category placement, and direct product URLs.
The dataset is useful for grocery price monitoring, promotion intelligence, competitor research, assortment analysis, retail reporting, and ecommerce data pipelines. Results are saved as clean dataset items with empty values omitted, making them easier to export and analyze.
Why use Tesco Products Scraper?
- Price monitoring - Compare product prices and unit prices across repeated runs for staples, branded products, or seasonal searches.
- Promotion tracking - Capture promotion text and sponsored-result indicators to study Tesco offers and retail visibility.
- Catalog research - Analyze products by department, aisle, shelf, brand, rating, and product identifiers.
- Clean product records - Receive consistent field names, direct URLs, product images, timestamps, and page information for every result.
- Repeatable workflows - Run the Actor on demand or schedule recurring collections in Apify for historical comparisons.
- Automation-ready exports - Download data as JSON, CSV, Excel, or XML, or connect runs to APIs and workflow tools.
What data can you extract from Tesco?
Each dataset item represents one Tesco grocery product listing. Fields are included when Tesco publishes a value for that product.
| Field | Type | Description |
|---|---|---|
product_id | String | Tesco product identifier. |
title | String | Product name shown in the listing. |
brand | String | Product brand when available. |
product_url | String | Direct Tesco product page URL. |
image_url | String | Main product image URL. |
price | Number | Current displayed product price. |
unit_price | Number | Price per unit when available. |
unit_of_measure | String | Unit used for the unit price, such as litre or kilogram. |
is_for_sale | Boolean | Indicates whether the product is available for sale. |
status | String | Product status supplied by Tesco. |
is_sponsored | Boolean | Indicates whether the result is sponsored. |
sponsored_ad_id | String | Sponsored listing identifier when available. |
promotion_texts | Array | Promotion or offer text values. |
department | String | Tesco department name. |
aisle | String | Tesco aisle name. |
shelf | String | Tesco shelf name. |
review_count | Integer | Number of product reviews. |
rating | Number | Average product rating. |
gtin | String | Global Trade Item Number when available. |
tpnb | String | Tesco product number when available. |
tpnc | String | Tesco product code when available. |
base_product_id | String | Base product identifier for a product family. |
search_term | String | Search term resolved for the collected listing. |
page | Integer | Results page containing the product. |
scraped_at | String | ISO timestamp for when the item was collected. |
How to scrape Tesco product data
- Open Tesco and copy a public groceries search, category, or tag-style listing URL.
- Open Tesco Products Scraper on Apify Store.
- Paste the URL into the
urlfield. - Set
results_wantedandmax_pagesfor the size of the collection. - Optionally configure Apify Proxy for larger or repeated runs.
- Start the run, review the dataset preview, and download or connect the results.
The Actor accepts listing URLs under https://www.tesco.com/groceries/en-GB/. Search URLs can include a query and page number. Category and tag-style URLs can also be used when they display Tesco product listings.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
url | String | No | Tesco milk search URL | Public Tesco groceries search, category, or tag-style listing URL. |
results_wanted | Integer | No | 20 | Maximum number of products to save. |
max_pages | Integer | No | 10 | Maximum number of result pages to process. |
proxyConfiguration | Object | No | { "useApifyProxy": false } | Optional Apify Proxy settings for the run. |
Usage Examples
Basic Tesco product search
Collect the first 20 products from a Tesco search for milk:
{"url": "https://www.tesco.com/groceries/en-GB/search?query=milk&inputType=free+text","results_wanted": 20,"max_pages": 3}
Collect a Tesco category
Use a category listing URL to build a broader grocery dataset:
{"url": "https://www.tesco.com/groceries/en-GB/shop/fresh-food/all","results_wanted": 50,"max_pages": 5}
Track a focused product group
Use a tag-style listing and a larger limit for recurring assortment or price monitoring:
{"url": "https://www.tesco.com/groceries/en-GB/shop/vegan/all","results_wanted": 100,"max_pages": 8,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Sample Output
{"product_id": "257264875","title": "Cravendale Filtered Fresh Semi Skimmed Milk 2L Fresher for Longer","brand": "CRAVENDALE","product_url": "https://www.tesco.com/groceries/en-GB/products/257264875","image_url": "https://digitalcontent.api.tesco.com/v2/media/ghs/example/product.jpeg?h=225&w=225","price": 2.5,"unit_price": 1.25,"unit_of_measure": "litre","is_for_sale": true,"status": "AvailableForSale","is_sponsored": true,"sponsored_ad_id": "example-ad-123","promotion_texts": ["Any 2 for Β£4 Clubcard Price - Selected Dairy Products 2 Litre"],"department": "Milk, Butter & Eggs","aisle": "Milk","shelf": "Filtered Milk","review_count": 208,"rating": 4.7,"gtin": "05000181034448","tpnb": "54705015","tpnc": "257264875","base_product_id": "54705015","search_term": "milk","page": 1,"scraped_at": "2026-03-26T11:18:12.190Z"}
Output Data
The Actor writes one dataset item per product. The output table above documents the available field names and types. Empty and null-like values are omitted, so a product record may contain fewer fields when Tesco does not publish every detail. Numeric prices are returned as numbers, promotion messages are returned as an array, and scraped_at uses an ISO timestamp.
Tips for Best Results
- Start with a small limit - Use
results_wanted: 20to validate the URL and output before collecting a larger dataset. - Use consistent searches - Keep the same Tesco query when comparing prices, promotions, or assortment over time.
- Use complete listing URLs - Copy a public URL that already contains the search, category, or tag context you need.
- Set a practical page cap - Increase
max_pagesfor larger collections, but keep it controlled for test runs. - Schedule repeat runs - Daily or weekly schedules work well for price and promotion history.
- Expect optional fields - Products may omit ratings, promotions, sponsored identifiers, or category details when Tesco does not publish them.
Integrations and Export Formats
| Option | Use |
|---|---|
| Google Sheets | Review product snapshots and price changes with a team. |
| Airtable | Maintain a searchable product and promotion tracker. |
| Webhooks | Trigger downstream workflows after a run finishes. |
| Make or Zapier | Send product records to no-code business processes. |
| Apify API | Start runs and retrieve datasets from an application or data pipeline. |
| JSON, CSV, Excel, XML | Download the dataset for analysis, reporting, or storage. |
Frequently Asked Questions
Can I scrape Tesco search results?
Yes. Provide a public Tesco groceries search URL in url, set the result limit, and run the Actor.
Which Tesco URL types are supported?
Search, category, and tag-style product listing URLs under /groceries/en-GB/ are supported when they return Tesco product results.
Can I collect products from a later page?
Yes. If the supplied URL includes a page parameter, the collection starts from that page and continues within the max_pages limit.
Can I export Tesco product data to CSV or Excel?
Yes. Apify datasets can be downloaded as CSV, Excel, JSON, XML, and other supported formats.
Why are some fields missing from a product?
Fields are missing when Tesco does not publish that information for a particular product or category. Empty values are omitted from dataset records.
Can I schedule Tesco price monitoring?
Yes. Create an Apify schedule to run the same Tesco URL hourly, daily, weekly, or at another interval.
Is this an official Tesco API?
No. This is an independent Tesco product data extraction Actor and is not affiliated with, endorsed by, or operated by Tesco.
Is it legal to collect Tesco product data?
Public data collection can be legal, but you are responsible for complying with Tesco's terms, applicable laws, privacy requirements, and the rules that apply to your use case.
Related Actors
- Nike Product Scraper - Collect Nike product listings, prices, colorways, images, and product links for retail research.
- Target Product Scraper - Extract Target.com product prices, ratings, availability, images, and marketplace information.
- Tokopedia Search Scraper - Collect Tokopedia product listings, prices, ratings, seller details, and category data.
Support
For issues, feature requests, or requests for additional Tesco fields, use the Issues tab on the Actor page or contact the developer through Apify.
Legal Notice
Tesco Products Scraper is designed for legitimate collection of publicly available product information. Users are responsible for using the data responsibly and complying with Tesco's website terms, applicable laws, and privacy requirements. This Actor is not affiliated with Tesco.