ALDI Australia Scraper avatar

ALDI Australia Scraper

Pricing

from $1.29 / 1,000 aldi australia products

Go to Apify Store
ALDI Australia Scraper

ALDI Australia Scraper

Extract ALDI Australia product data: price, brand, pack size, unit price, availability, images, and categories. Search by keyword or paste any category, product, or search URL.

Pricing

from $1.29 / 1,000 aldi australia products

Rating

0.0

(0)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Categories

Share

ALDI Australia Scraper

ALDI Australia Scraper extracts product data from aldi.com.au — price, brand, pack size, price per unit, sale availability, images, and categories — by keyword search or by pasting category, search, or product URLs directly.

Search by keyword or paste any ALDI Australia category, product, or search URL — get clean, structured product data with price, brand, pack size, unit price, and availability, ready for price monitoring or catalogue analysis.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor: Actor ID parsebird/aldi-australia-scraper on Apify — call it with the apify-client SDK, e.g. ApifyClient(token).actor("parsebird/aldi-australia-scraper").call(run_input={"searchTerms": ["cheese"], "maxResults": 50}); key inputs are searchTerms (array of single-word product keywords, one search per term), startUrls (array of {url} for ALDI Australia category, search-result, or individual product pages — filters already in the URL are applied automatically), maxResults (integer, applies per search term or URL, 0 = unlimited), and sortBy (relevance, name_asc, name_desc, price_asc, or price_desc); output rows have sku, name, brand, price, onSale, availabilityLabel, pricePerUnit, packSize, currency, categories, imageUrl, images, inStock, discontinued, ageRestricted, productUrl, searchTerm, and sourceUrl; full API spec is on the Apify Console API tab for this actor, and an Apify API token is required to call it programmatically.

What does ALDI Australia Scraper do?

ALDI Australia Scraper reads the same public product pages any shopper on aldi.com.au can see — no login, no cart, no app. It supports three ways to collect data:

  • 🔍 Keyword search — search for a product by name (e.g. cheese, coffee, chocolate) and get every matching result, cheapest-first if you want.
  • 🔗 Category, search, or product URLs — paste any ALDI Australia category page, search-result URL, or individual product page and scrape it directly. Filters already baked into the URL (sort order, brand, theme) carry over automatically.
  • 📄 Whole-category capture — set Max results to 0 on a category URL to pull every product in it, not just the first page.

Other things it does:

  • Sorts results by relevance, name, or price directly from ALDI's own catalogue ordering — no client-side re-sorting.
  • Deduplicates products automatically: if the same item matches two search terms or appears in an overlapping URL, it's only saved once, credited to whichever term or URL found it first.
  • Runs on Apify's infrastructure with scheduling, REST API access, and native JSON, CSV, Excel, HTML, and XML export.
  • Uses no browser and no proxy — ALDI Australia's category and product pages are plain server-rendered HTML, so runs are fast and cheap.

What data can you extract from ALDI Australia?

FieldDescription
skuALDI product identifier
name / brandProduct name and brand (ALDI private label or supplier)
priceCurrent price in AUD
onSale / availabilityLabelWhether ALDI has attached a limited-run note (e.g. "While Stocks Last") and the note's text
pricePerUnitNormalized unit price for comparison (e.g. "$14.98 per 1 kg")
packSizeSelling size or pack quantity
categoriesCategory path the product belongs to
imageUrl / imagesPrimary and all product photo URLs
inStock / discontinuedCurrent listing and delisting status
ageRestrictedTrue for alcohol and other age-restricted items
productUrlCanonical ALDI Australia product page URL

Input parameters

ParameterTypeRequiredDefaultDescription
searchTermsstring[]No["cheese"]Products to search for, one word per term for best matching
startUrlsstring[]No[]ALDI Australia category, product, or search-result URLs
maxResultsintegerNo100Max products per search term or URL; 0 = unlimited
sortByselectNorelevancerelevance, name_asc, name_desc, price_asc, or price_desc

At least one of searchTerms or startUrls should be set — if both are left empty, the Actor falls back to searchTerms: ["cheese"].

Output example

{
"sku": "000000000000283609",
"name": "Smoked Cheese 200g",
"brand": "EMPORIUM SELECTION",
"price": 4.99,
"onSale": false,
"pricePerUnit": "$24.95 per 1 kg",
"packSize": "0.2 kg",
"currency": "AUD",
"categories": ["Dairy, Eggs & Fridge", "Cheese"],
"imageUrl": "https://dm.apac.cms.aldi.cx/is/image/aldiprodapac/product/jpg/scaleWidth/600/5273d675-32cb-4890-92b7-30517d641c3e/emporium-selection-smoked-cheese-200g",
"images": ["https://dm.apac.cms.aldi.cx/is/image/aldiprodapac/product/jpg/scaleWidth/600/5273d675-32cb-4890-92b7-30517d641c3e/emporium-selection-smoked-cheese-200g"],
"inStock": true,
"discontinued": false,
"ageRestricted": false,
"productUrl": "https://www.aldi.com.au/product/emporium-selection-smoked-cheese-200g-000000000000283609",
"searchTerm": "cheese"
}

Fields that are empty for a given product (e.g. brand for loose produce, or pricePerUnit and packSize for alcohol) are left out of that row entirely, so a row is only as wide as the data ALDI publishes for it. Download results as JSON, HTML, CSV, or Excel from the Storage tab, or fetch them via the dataset API endpoint.

Python example

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("parsebird/aldi-australia-scraper").call(run_input={
"searchTerms": ["cheese", "milk", "coffee"],
"sortBy": "price_asc",
"maxResults": 50,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["name"], item["price"], item.get("pricePerUnit"))

JavaScript example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('parsebird/aldi-australia-scraper').call({
startUrls: [{ url: 'https://www.aldi.com.au/products/pantry/' }],
maxResults: 0,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0].name, items[0].price);

Use cases

  • Price monitoring — track ALDI Australia prices for your own basket of products over time by scheduling recurring runs.
  • Catalogue analysis — pull a whole category (maxResults: 0) to see everything ALDI stocks in Pantry, Drinks, or any other department, with brand and pack-size breakdowns.
  • Competitor benchmarking — compare ALDI's private-label pricing against Woolworths, Coles, or other retailers using per-unit prices.
  • Deal discovery — filter results where onSale is true to surface limited-run and special-buy items.

How to scrape ALDI Australia with ALDI Australia Scraper

  1. Click Try for free (or Run) on this Actor's page.
  2. Enter one or more search terms, or paste ALDI Australia category, search, or product URLs into Start URLs.
  3. Optionally set Max results (0 for a full category) and a sort order.
  4. Click Start and watch results land in the dataset in real time.
  5. Export results as JSON, CSV, or Excel, or pull them programmatically via the Apify API.

How much does it cost to scrape ALDI Australia?

This Actor uses pay-per-event pricing — you pay only for results, not for compute time.

EventPrice per eventPrice per 1,000
product-scrapedfrom $0.00129$1.29 – $1.99

A product-scraped event fires once for every unique product saved, whether it came from a keyword search or a pasted URL. Price per 1,000 products depends on your Apify plan tier (Free $1.99, Bronze $1.79, Silver $1.59, Gold $1.29). Scraping 1,000 products on a Free plan costs about $1.99. Apify's monthly platform usage credits apply to this Actor like any other.

ALDI Australia Scraper only collects data that ALDI already publishes on public product pages without requiring a login. Scraping publicly available data is generally legal, but you're responsible for how you use the data — check ALDI Australia's Terms of Use and read Apify's guide on the legality of web scraping before running large or commercial scrapes.

Other grocery and retail scrapers

FAQ

Do I need an ALDI account to use this Actor? No. It only reads public product pages that ALDI serves to logged-out visitors — no login or cart required.

Why did a two-word search term return unrelated products? ALDI's own search matches each word in a term independently, so a term like "chicken soup" returns everything matching "chicken" or "soup", not just soup made with chicken. Use one word per search term for the tightest match, or use a category/search URL with ALDI's own filters instead.

How do I get every product in a category, not just the first page? Set maxResults to 0 on that category's startUrls entry. The Actor pages through the full category automatically.

Why are pricePerUnit and packSize missing for some products? ALDI doesn't publish a normalized unit price or pack size for alcohol. Those two fields are simply left off those rows.

Can I schedule this to run automatically? Yes. Use Apify's built-in Task Scheduler to run it daily, weekly, or at any interval, and connect it to Zapier, Make, or a webhook for downstream integrations.

Something looks wrong or missing — how do I report it? Open an issue on the Actor's Issues tab in Apify Console, or use the API tab to inspect the exact request/response for your run.