Woolworths NZ Scraper | Prices, Specials & Products avatar

Woolworths NZ Scraper | Prices, Specials & Products

Pricing

from $0.50 / 1,000 product from search or categories

Go to Apify Store
Woolworths NZ Scraper | Prices, Specials & Products

Woolworths NZ Scraper | Prices, Specials & Products

Scrape Woolworths New Zealand (woolworths.co.nz) by search, category or product URL. Get prices, specials, unit prices, stock, barcodes, ingredients, nutrition and images. Fast HTTP scraper, no browser, proxies included. Filter by specials, multibuy, half price and member price.

Pricing

from $0.50 / 1,000 product from search or categories

Rating

0.0

(0)

Developer

Vladimir Efimenco

Vladimir Efimenco

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Woolworths NZ Scraper | ⚡ Fast & Browserless

This Woolworths NZ scraper collects product data from woolworths.co.nz: prices, specials, unit prices, stock status, barcodes, categories and images. Search by keyword, go through any category, or pass product page links to get the full details, including ingredients, allergens and nutrition tables. It sends plain HTTP requests, no browser involved, and proxies are already included.

If you were looking for a Woolworths New Zealand scraper (the supermarket chain that used to be called Countdown), this is the one. You can get a clean dataset of the whole shelf or just the products you track.

⚡ What you can do with it

  • Scrape Woolworths NZ prices for any search term, for example milk, frozen food or coffee.
  • Go through a whole category by its slug or by pasting the category page link.
  • Collect only what is on offer: specials, multibuy deals, half price items or member prices.
  • Sort results by relevance, lowest price, highest price or lowest unit price.
  • Get full product pages by URL, with description, ingredients, allergens, warnings, usage instructions and nutritional information.
  • Get every product image, not only the main one.
  • Run several queries, categories or product links in one go.

🎯 Who uses it

  • Price monitoring and competitor tracking for New Zealand grocery and retail.
  • Teams that follow Woolworths NZ specials and promotions week by week.
  • Product catalogue and barcode (GTIN) matching between stores or suppliers.
  • Nutrition, allergen and diet apps that need structured Woolworths NZ product data.
  • Market researchers and analysts working with NZ grocery pricing.
  • Developers who need Woolworths NZ data in a spreadsheet, database or their own app.

🔧 Input

The actor has three modes. Pick one with the mode field and fill in the matching list.

FieldDescription
modeSearch Query, By Category or Product URLs
searchQueriesKeywords to search for. Used in Search Query mode
categoriesCategory slugs (for example ready-meals) or category page links. Used in By Category mode
productUrlsProduct page links from woolworths.co.nz. Used in Product URLs mode
pageNumberPage to fetch, starting from 1. Search Query and By Category modes
pageSizeProducts per page: 36, 72 or 108. Default is 108
sortRelevance, price low to high, price high to low, or unit price low to high
staticFiltersAny of: Specials, Multibuy, Half price, Member price. You can pick several

A few things worth knowing:

  • Every query and every category returns one page per run. To go deeper, raise pageNumber and run again.
  • For categories you can paste a full link like https://www.woolworths.co.nz/shop/browse/dinner/ready-meals?page=2. The slug is picked out of it automatically, and anything after the ? is ignored.
  • Product links are cleaned up the same way, so tracking parameters do no harm. Links that are not from woolworths.co.nz are skipped with a warning in the log.

Example input for a search:

{
"mode": "SEARCH",
"searchQueries": ["milk", "frozen food"],
"pageNumber": 1,
"pageSize": "108",
"sort": "PRICE_LOW_HIGH",
"staticFilters": ["SPECIALS"]
}

Example input for product pages:

{
"mode": "PRODUCT_URLS",
"productUrls": [
{ "url": "https://www.woolworths.co.nz/shop/product-details/647699/nescafe-espresso-coffee-concentrate-sweet-vanilla" }
]
}

🐍 Python example

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("mof1re/woolworths-nz-scraper").call(
run_input={
"mode": "CATEGORY",
"categories": ["ready-meals"],
"pageSize": "72",
"sort": "CUP_PRICE_LOW_HIGH",
"staticFilters": ["SPECIALS", "MEMBER_PRICE"],
}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["name"], item["price"], item["discount_price"], item["unit_price"])

📊 Data fields

All three modes write to the same dataset with the same fields. Fields a mode cannot fill are null.

🛒 Product

FieldDescription
skuWoolworths product SKU
urlProduct page link
nameProduct name
brandBrand
gtinBarcode (GTIN/EAN)
slugProduct slug used in the page link
variantPurchase variant key
isAlcoholWhether the product is alcohol. Search and category modes
isTobaccoWhether the product is tobacco. Search and category modes
healthStarRatingHealth Star Rating. Search and category modes

💰 Pricing

FieldDescription
priceRegular price. When a product is discounted, this is the price before the discount
discount_priceCurrent price when the product is discounted, otherwise null
savingsDifference between the regular and the discounted price
currencyCurrency, NZD
unitUnit the product is sold in
unit_valueQuantity the unit price is calculated for, for example 100ML
unit_pricePrice per unit
isSpecialWhether the product is on special
isClubPriceWhether the price is a member price
isBoostOfferWhether the product has a boost offer
price_variationsAll purchase variants with their prices and availability. Search and category modes

📦 Availability and limits

FieldDescription
in_stockWhether the product is in stock
minQtyMinimum quantity per order
maxQtyMaximum quantity per order
defaultQtyDefault quantity

🗂️ Categories and images

FieldDescription
categoryProduct category
category_pathCategory hierarchy from the top level down
imageUrlMain product image
imagesAll product image links. Product URLs mode

🧾 Full product details (Product URLs mode)

FieldDescription
descriptionProduct description as plain text
ingredientsIngredients as plain text
allergencontainsAllergen information
warningsProduct warnings
usage_instructionsDirections of use
nutritionalinformationNutrition tables, usually per 100g and per serve

In Search Query and By Category modes the barcode and the category come from our own product database, so a product that was added to the store very recently can have them empty. Product URLs mode reads the barcode straight from the product page.

📋 Example output

Product URLs mode, shortened:

[
{
"sku": "6082400",
"url": "https://www.woolworths.co.nz/shop/product-details/6082400/allen-s-chocolate-block-strawberries-cream",
"name": "Allen's Chocolate Block Strawberries & Cream 170g",
"gtin": "9300605166455",
"brand": "Allen's",
"slug": "allen-s-chocolate-block-strawberries-cream",
"imageUrl": "https://assets.woolworths.com.au:443/images/2010/6082400.jpg?impolicy=wowb2bgpkhx",
"images": [
"https://assets.woolworths.com.au:443/images/2010/6082400.jpg?impolicy=wowb2bgpkhx",
"https://assets.woolworths.com.au:443/images/2010/6082400_2.jpg?impolicy=wowb2bgpkhx"
],
"isAlcohol": null,
"isTobacco": null,
"healthStarRating": null,
"variant": "6082400-EA",
"in_stock": true,
"price": 6.49,
"discount_price": 3.99,
"savings": 2.5,
"currency": "NZD",
"unit": "EA",
"unit_value": "100G",
"unit_price": 2.35,
"maxQty": 36,
"minQty": 1,
"defaultQty": 1,
"isSpecial": true,
"isClubPrice": false,
"isBoostOffer": false,
"price_variations": null,
"category": null,
"category_path": [
"Pantry",
"Snacks & Sweets",
"Chocolate Bars & Blocks"
],
"description": "Introducing Allen's new Strawberries & Cream 170g! A smooth white choc block filled with fudge pieces and sherbet fizzy chips.\n\nIntroducing Allen's new Strawberries & Cream 170g! A smooth white choc block filled with fudge pieces and sherbet fizzy chips.",
"allergencontains": "Milk, Soy",
"ingredients": "Sugar, Milk Solids, Vegetable Fats Emulsifier (Soy Lecithin), Fudge Pieces (8%) (Sugar, Glucose Syrup, Vegetable Fat, Sweetened Condensed Milk, Emulsifier (Soy Lecithin)), Salt, Colour (120), Flavour), Sherbet Chips (4%) (Raising Agent (Sodium Bicarbonate), Food Acid (Citric)), Emulsifiers (Soy Lecithin, 476), Flavours.",
"warnings": "CHILDREN LESS THAN 4 YEARS HAVE LIMITED CHEWING ABILITY AND COULD CHOKE ON SMALL PIECES",
"usage_instructions": null,
"nutritionalinformation": [
{
"__typename": "NutritionalInformation",
"energy": "2280.0kJ",
"protein": "6.9g",
"fatTotal": "31.8g",
"fatTotalSaturated": "18.8g",
"carbohydrate": "57.7g",
"carbohydrateSugars": "56.0g",
"dietaryFibre": null,
"sodium": "130.0mg",
"quantityPerUnit": "Per 100g"
},
{
"__typename": "NutritionalInformation",
"energy": "430.0kJ",
"protein": "1.3g",
"fatTotal": "6.0g",
"fatTotalSaturated": "3.6g",
"carbohydrate": "10.9g",
"carbohydrateSugars": "10.6g",
"dietaryFibre": null,
"sodium": "24.0mg",
"quantityPerUnit": "Per Serve"
}
]
}
]

❓ FAQ

Is this the same as Countdown? Yes. Countdown New Zealand is now Woolworths NZ, and the data comes from woolworths.co.nz.

Can I scrape a whole category? Yes, use the By Category mode. One run returns one page of up to 108 products per category. Change pageNumber to move through the rest.

How do I find a category slug? It is the last part of the category link on woolworths.co.nz, for example ready-meals in .../browse/dinner/ready-meals. You can also paste the whole link and the actor will pull the slug out itself.

Can I only get products on special? Yes. Pick Specials, Multibuy, Half price or Member price in the filters. You can combine them.

Do I need my own proxies? No, they are built in.

How fresh is the data? Every run queries the site live, so prices and stock are what the site shows at that moment.

Where do ingredients and nutrition come from? From the product page. Use Product URLs mode to get them, since search and category listings do not carry those details.

💳 Pricing

Pay per result. Products from search and category listings and products with full details from a product page are priced separately, because a product page takes its own request while a listing page returns up to 108 products at once. You are charged for products that end up in the dataset, not for requests or pages.

⚠️ Notes

  • Free accounts can run up to 5 times a day, with up to 3 search queries, 5 categories or 20 product links per run, and 2 requests in parallel. Paid Apify plans have no limit on the number of queries, categories or links and run up to 10 requests in parallel.
  • If your account runs out of credit during a run, the actor stops and keeps everything it has already collected.
  • The data is what woolworths.co.nz shows publicly at the time of the run. The site changes all the time, so prices and stock can differ a minute later.

🔗 See also

Need a scraper for another platform? Check out: