Woolworths AU Product Scraper
Pricing
from $0.50 / 1,000 products
Woolworths AU Product Scraper
Scrape Woolworths Australia products by keyword, category or product URL. Prices, specials, half-price flags, unit prices, stock and barcodes as clean JSON, CSV or Excel.
Pricing
from $0.50 / 1,000 products
Rating
0.0
(0)
Developer
Nikita Matvieiev
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 hours ago
Last modified
Categories
Share
Pulls product data from woolworths.com.au: prices, specials, unit prices, stock status, barcodes. Search by keyword, crawl whole categories, or grab specific products by URL or stockcode.
It talks to the same JSON endpoints the Woolworths website uses, so you get clean structured data instead of scraped HTML. No login, no cookies to paste.
What you get
Every product comes back with the fields people usually need for price tracking and comparison:
stockcode Woolworths product IDname, brand product name and brandprice current shelf price (AUD)wasPrice price before the specialsavings wasPrice minus priceisOnSpecial any discount runningisHalfPrice the famous half-price specialscupPrice unit price, e.g. 3.00cupMeasure unit, e.g. 100G or 1LcupString "$3.00 / 100G"packageSize "200g", "2L", ...isAvailable listed onlineisInStock in stock right nowbarcode EAN/GTINimageUrl large product imageurl product pagesource which search term, category or URL produced this row
Sample row:
{"stockcode": 36066,"name": "Arnott's Tim Tam Original Chocolate Biscuits","brand": "Arnott's","price": 6,"wasPrice": 6,"savings": 0,"isOnSpecial": false,"isHalfPrice": false,"cupPrice": 3,"cupMeasure": "100G","cupString": "$3.00 / 100G","packageSize": "200g","isAvailable": true,"isInStock": true,"barcode": "9310072000282","imageUrl": "https://cdn1.woolworths.media/content/wowproductimages/large/036066.jpg","url": "https://www.woolworths.com.au/shop/productdetails/36066","source": "search:tim tam"}
Export to JSON, CSV, Excel, or pull it through the Apify API.
Input
Mix and match any of these in one run:
searchTerms keywords, same as the search box on the sitecategoryUrls category pages, e.g. /shop/browse/dairy-eggs-fridge/milkproductUrls product pages or bare stockcodes like 888140specialsOnly only discounted products (search terms and categories)maxItemsPerSource cap per search term or category, default 200proxyConfiguration AU residential by default, leave it as is
Example: every discounted snack plus a couple of tracked products.
{"categoryUrls": [{ "url": "https://www.woolworths.com.au/shop/browse/snacks-confectionery" }],"productUrls": ["https://www.woolworths.com.au/shop/productdetails/888140", "6023926"],"specialsOnly": true,"maxItemsPerSource": 1000}
Products that show up in several sources are saved once.
Reliability
Woolworths sits behind Akamai and blocks datacenter IPs. This actor runs a real browser session through Australian residential proxies, and when a session gets flagged it throws it away and starts a fresh one on a new IP. Proxy costs are already in the price, you don't pay for them separately.
If one search term or category fails, the rest of the run keeps going and the log tells you which one broke. A run that scrapes zero products is marked as failed, so your schedules and integrations notice instead of silently getting an empty dataset.
Typical uses
- Daily price and specials tracking for a list of products
- Weekly half-price catalogue dumps
- Unit price comparison across brands
- Feeding a grocery comparison app or a spreadsheet
Schedule it in Apify and hook the dataset up to Google Sheets, a webhook, or your own database.
FAQ
Which store's prices are these? The default online prices woolworths.com.au shows when no store is selected.
Coles? Use the Coles AU Product Scraper by the same author, the output fields line up for side by side comparison.
Something broke? Open an issue on the Issues tab with the run link. Woolworths changes their site now and then, and reports help catch it early.