Coles AU Product Scraper
Pricing
from $0.60 / 1,000 products
Coles AU Product Scraper
Scrape Coles Australia products by keyword, category, specials section or product URL. Prices, specials, unit prices and availability as clean JSON, CSV or Excel.
Pricing
from $0.60 / 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 coles.com.au: prices, specials, unit prices, availability. Search by keyword, crawl categories or the whole specials section, or look up specific products.
It reads the same JSON the Coles website loads for its own pages, so the output is structured data, not scraped HTML. No login needed.
What you get
productId Coles product IDname, brand, size product name, brand, pack sizeprice current price (AUD)wasPrice price before the specialsavings wasPrice minus priceisOnSpecial any discount runningpromotionType e.g. SPECIALofferDescription multi-buy and other offer text, when Coles provides itunitPrice price per unit, e.g. 2.93unitMeasure unit, e.g. g or lunitPriceString "$2.93/ 100g"isAvailable available onlinebarcode GTIN (product URL lookups only, see below)category Coles online categoryimageUrl product imageurl product pagesource which search term, category or URL produced this row
Sample row:
{"productId": 6845799,"name": "Gluten Free Tim Tam Original Biscuits","brand": "Arnott's","size": "150g","price": 4.4,"wasPrice": 5.5,"savings": 1.1,"isOnSpecial": true,"promotionType": "SPECIAL","offerDescription": null,"unitPrice": 2.93,"unitMeasure": "g","unitPriceString": "$2.93/ 100g","isAvailable": true,"barcode": null,"category": "Biscuits & Cookies","imageUrl": "https://cdn.productimages.coles.com.au/productimages/6/6845799.jpg","url": "https://www.coles.com.au/product/arnotts-gluten-free-tim-tam-original-biscuits-150g-6845799","source": "search:tim tam"}
Export as JSON, CSV or Excel, or read it through the Apify API.
Input
Any mix of these in one run:
searchTerms keywords, same as the search box on the sitecategoryUrls /browse/... category pages or /on-specialproductUrls product pages or bare product IDs like 6845799specialsOnly 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: the whole specials section plus two tracked products.
{"categoryUrls": [{ "url": "https://www.coles.com.au/on-special" }],"productUrls": ["https://www.coles.com.au/product/dairy-farmers-buttermilk-600ml-252739", "6845799"],"maxItemsPerSource": 10000}
Products that appear in several sources are saved once. Barcodes only come back for products you pass in productUrls, because Coles doesn't include them in search and category listings.
Reliability
Coles runs Imperva bot protection and blocks datacenter IPs. The actor uses a real browser session on Australian residential proxies. When Coles throws a challenge page mid-run, it starts a fresh session on a new IP and carries on. Proxy costs are included in the price.
A broken search term or category doesn't kill the run, the log names it and the rest keeps going. A run with zero products is marked as failed so schedules and integrations notice.
Typical uses
- Daily specials and half-price tracking
- Coles vs Woolworths price comparison (pair it with the Woolworths AU Product Scraper by the same author)
- Unit price comparison across brands
- Feeding a grocery app, a spreadsheet or a database
FAQ
Which store's prices are these? The default online prices coles.com.au shows when no store is selected.
Something broke? Open an issue on the Issues tab with the run link. Coles updates their site now and then, and reports help catch it early.