Appliances Online Scraper - Products, Prices & Reviews
Pricing
from $1.50 / 1,000 product results
Appliances Online Scraper - Products, Prices & Reviews
Scrape appliancesonline.com.au by category, keyword, or URL. Extract title, brand, AUD price, was-price, stock, key specs, images, ratings, badges, care plans, manuals, delivery details, questions, and customer reviews.
Pricing
from $1.50 / 1,000 product results
Rating
0.0
(0)
Developer
Abot API
Maintained by CommunityActor stats
1
Bookmarked
1
Total users
0
Monthly active users
7 days ago
Last modified
Categories
Share
Appliances Online Scraper: Products, Prices, Stock & Reviews
Scrape Appliances Online Australia (appliancesonline.com.au) product listings, specifications, stock and customer reviews. Browse a whole category, a keyword the storefront resolves itself, or paste product links. Every product comes back as one flat record with the AUD price, the recommended retail price and the saving, stock status, the storefront's own spec keys, media, the aggregate customer rating with its star breakdown, badges and care plans.
Why This Scraper?
- One read per category. A browse read returns a category's complete product list, so a run collects hundreds of products in a few requests instead of walking page after page.
- Every link shape. Paste category, sale, brand, search or product links, numeric product ids, or plain keywords; each pasted product is one fully enriched record.
- Filters that save money. Brand, reduced-only, in-stock-only, price range, facets and sort order apply in both modes, and products dropped by a filter are never collected and never charged.
- Full detail extraction. Specification table, manuals, feature bullets, delivery services and the on-sale flag from the product's own document.
- Reviews and questions. Review text, rating, author and source, review tags, the what-customers-say recap and the question-and-answer feed, each capped per product.
- Built for schedules. Incremental mode returns only new, changed and reappeared products, with warehouse stock counts, care plans, badges and efficiency labels on every record.
Use Cases
- Price and RRP monitoring: track the AUD price, the recommended retail price and the computed saving across a category or a watchlist to catch new markdowns.
- Stock and availability tracking: watch stock status and per-warehouse stock counts so a comparison site or reseller knows what is actually available.
- Review and reputation research: collect the rating breakdown, review text and the best and worst feature tags to see how a model is actually received.
- Catalog and spec comparison: pull the full specification table, key specs and manuals to compare models side by side or feed a comparison site.
- Sale and clearance monitoring: schedule recurring runs against a clearance or sale scope with incremental mode to catch newly reduced or newly out-of-stock products.
- Customer support and FAQ research: read the product question-and-answer feed to see what buyers actually ask before they purchase.
Data You Get
Sample shape: values are illustrative placeholders, not from a live record.
| Field | Example |
|---|---|
productId | "900001" |
sku | "SAMPLESKU1" |
title | "Sample Appliance Co 9kg Front Load Washing Machine" |
brand / manufacturer | "Sample Appliance Co" / { "name": "Sample Manufacturer" } |
price / rrp / savings | 1299.0 / 1699.0 / 400.0 |
onSale | true |
inStock / stockStatus | true / 1 |
stockByWarehouse | warehouse code to unit count, when the storefront exposes it |
popularity / featured | store-ranking score / featured-on-card flag |
badges | card badges, for example a made-in label |
image / images | cover image URL / the gallery URLs, cover first |
media | video and 360-view URLs (when Fetch product details is on and the product page offers them) |
specs | grouped specification table (when Fetch product details is on) |
keySpecs | the card's key spec pairs, when the storefront sends them (empty on most products) |
attr | flattened attribute map (attr_Brand, attr_Washing_Machine_Type, ...) |
warrantyNote | the storefront's own warranty text |
carePlans | care plan name and price, when the card offers one |
reviewCount / rating | 128 / 4.6 |
ratingBreakdown | fiveStarCount, fourStarCount, threeStarCount, twoStarCount, oneStarCount |
reviewSummary | the storefront's own what-customers-say recap |
bestFeatures / worstFeatures | tag and count pairs from the review summary |
manuals / delivery | manual titles and links / delivery service list (when Fetch product details is on) |
questions | customer questions and answers (when Fetch questions is on) |
reviews | reviewId, rating, reviewText, author, date, source (when Fetch customer reviews is on) |
url | product page link |
How to Use
- Pick a mode:
categories(browse a category, keyword or facet) orproducts(paste product links or ids). - Fill in the scope entries for that mode, and switch on the filters and detail toggles you need.
- Set Max products to control run size and cost, then click Start.
- Download the dataset as JSON, CSV or Excel, or read it through the API.
Browse a category, listing fields only:
{"mode": "categories","searchInputs": ["washers-and-dryers/washing-machines"],"fetchDetails": false,"maxItems": 20}
Browse with filters and full details:
{"mode": "categories","searchInputs": ["refrigeration/fridges"],"brand": "Sample Brand","onSaleOnly": true,"inStockOnly": true,"sortBy": "price_asc","fetchDetails": true,"maxItems": 10}
Search by keyword:
{"mode": "categories","searchInputs": ["sample-model-number", "cooktops"],"maxItems": 10}
Reviews, plus the question feed:
{"mode": "products","productInputs": ["900001", "https://www.appliancesonline.com.au/product/sample-product-8kg/"],"fetchReviews": true,"maxReviewsPerProduct": 20,"fetchQuestions": true}
Supported link shapes
| Shape | Example |
|---|---|
| Filter category listing | appliancesonline.com.au/filter/washers-and-dryers/washing-machines/ |
| Sale or clearance listing | appliancesonline.com.au/filter/clearance/ |
| Category with facet segment | appliancesonline.com.au/filter/washers-and-dryers/washing-machines/front-loading/ |
| Category page | appliancesonline.com.au/category/refrigeration/fridges/ |
| Brand page | appliancesonline.com.au/brand/bosch/ |
| Search link | appliancesonline.com.au/search/?q=fridge |
| Product page | appliancesonline.com.au/product/8kg-front-load-haier-washing-machine-hwm80-1403d/ |
| Numeric product id | 176381 |
| Keyword or model number | fridge, samsung wgg24403au |
Links work with or without www and with or without https://. A ?page=2 style parameter is ignored with a warning in the run log, because the storefront returns a whole category in one read.
Default change: if you run Product mode without setting Product links, the actor now reads one example of each supported link shape (the first six rows above) instead of nothing. Set your own list to replace it. Browse mode's default scopes are the washing-machines category and the keyword fridge.
Run it from your code
Python:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("abotapi/appliancesonline-com-au-scraper").call(run_input={"mode": "categories","searchInputs": ["washers-and-dryers/washing-machines"],"maxItems": 20,})for product in client.dataset(run["defaultDatasetId"]).iterate_items():print(product["title"], product["price"], product["inStock"])
JavaScript:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('abotapi/appliancesonline-com-au-scraper').call({mode: 'categories',searchInputs: ['washers-and-dryers/washing-machines'],maxItems: 20,});const { items } = await client.dataset(run.defaultDatasetId).listItems();
Or connect it to Make, Zapier, n8n, Google Sheets or webhooks from the Integrations tab.
How Max products shapes a run
A category read returns the storefront's whole product list in one go, so Max products (maxItems) is what actually bounds a run: with more than one browse scope in the same run, the budget is split evenly across scopes, and each scope's own list is trimmed to that share before it is read further. Set it to 0 for no limit.
Known issue (incremental mode): the per-scope trim is applied to the raw listing positions before unchanged products are filtered out, so in incremental mode Max products limits how many products are examined, not how many changed products are returned. A scope's listing keeps a stable order from run to run, so with a Max products value smaller than the scope, every recurring run re-examines the same top positions and never looks further down: a new or updated product sitting below that point is never reported. For example, 25 unchanged products followed by 10 new ones, with Max products 20, returns 0 rows. For recurring monitoring, set Max products to 0 or to at least the size of every tracked scope.
Resume and recurring updates
Resume (resumeFromRunId) skips every product the named run already collected, so a resumed run returns and bills only products that run did not have. The run log shows Resume: skipping N product(s). A resumed run never marks products EXPIRED, because it does not scan the full tracked scope.
Incremental mode (incrementalMode) is for schedules over the same scope: the actor remembers each scope's baseline itself, and a recurring run returns only NEW, UPDATED (with changedFields naming what moved, for example price or stock), REAPPEARED and optionally EXPIRED rows. UNCHANGED rows are suppressed by default so daily monitoring bills only what changed. Reviews are detected through the review count, the star breakdown and the rating, so a new review classifies the product UPDATED without listing every review body in changedFields. The saved baseline of a scope without a State key does not depend on the review cap: a schedule that ran with the former default of 50 reviews keeps its baseline under the new default of 20, so nothing is re-billed as NEW. The first run after the brand, stock status, popularity and specification fields became populated on every default run does not mark products UPDATED for those fields appearing; only real changes do.
Emit expired only runs after a run that scanned the whole tracked scope. It is skipped when Max products cut the read (including a per-scope share), after Resume, and for any filtered or partial scope (brand, price, stock or sale filters, facets, pasted product links, keyword searches), so a product is never marked EXPIRED just because the run did not reach it. EXPIRED rows count against Max products.
Choosing what changes a product
In incremental mode, Ignore fields when detecting changes (ignoreFieldsForChanges) lists fields whose movement should not mark a product UPDATED, for example badges or images. A plain name is ignored wherever it appears; a dotted path such as variants.price only along that path. Ignored fields stay in the output; they are just left out of change detection and changedFields. Changing the list does not mark already-tracked products UPDATED.
Dataset views
The dataset has five views: Products (overview), Product details, Reviews, Questions and answers, and Changes (incremental mode).
Send results into your apps (MCP connectors)
Authorize one MCP connector in Apify (Notion, Linear, Airtable or Apify), set the mcpConnectors input (and notionParentPageUrl for Notion item pages), and each run writes a condensed summary per item into your tool via mcpConnectors, with the write count capped by maxNotifyListings. The complete record always stays in the Apify dataset, and a connector failure never affects the scrape.
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | select | categories | Browse categories and keywords, or read pasted product links and ids. |
searchInputs | string list | washing-machines path and the keyword fridge | Browse mode scopes: category paths, category links, keywords, model numbers or bare product ids. |
productInputs | string list | one example of each supported link shape | Product mode: product links, numeric product ids, or category, facet, sale, brand and search links; each product found is fully enriched. |
facets | string list | empty | Optional storefront facet slugs appended to category paths, applied server-side when honored. |
brand | text | empty | Keep only products whose brand matches this name. |
onSaleOnly | boolean | false | Keep only products currently reduced. |
inStockOnly | boolean | false | Keep only products the store lists in stock. |
minPrice | integer | unset | Keep only products priced at or above this AUD amount. |
maxPrice | integer | unset | Keep only products priced at or below this AUD amount. |
sortBy | select | popularity | popularity, price asc, price desc, name, rating. |
fetchDetails | boolean | true | Read each product's own document, spec table, manuals, features and delivery services; billed as the detail-enrichment event. Product mode always fetches details. |
fetchReviews | boolean | false | Also read each product's customer review feed. |
fetchQuestions | boolean | false | Also read the product's questions (needs Fetch product details). |
maxReviewsPerProduct | integer | 20 | Review cap per product when reviews are on (1 to 1000; the default was lowered from 50 to 20, saved incremental baselines are kept). |
questionsCap | integer | 20 | Question cap per product when questions are on. |
maxItems | integer | 20 | Max products across the whole run; 0 for unlimited. |
resumeFromRunId | text | empty | Continue ONE interrupted run: paste a prior run or dataset id. |
incrementalMode | boolean | false | Recurring monitoring: later runs return only what changed. |
stateKey | text | empty | Name a monitoring campaign, or share state deliberately. |
emitUnchanged | boolean | false | Also return (and bill) unchanged rows. |
emitExpired | boolean | false | Also return rows gone after a COMPLETE scan. |
ignoreFieldsForChanges | array | empty | Incremental mode only. Field names left out of change detection and changedFields (they stay in the output). A plain name applies at any depth, a dotted path such as variants.price only along that path. Products already tracked are re-compared with the list applied, so changing it does not mark everything UPDATED. |
mcpConnectors | array | empty | Send results into your apps through MCP connectors (optional). |
notionParentPageUrl | text | empty | Notion parent page for the Notion connector. |
maxNotifyListings | integer | 50 | Cap on items written to each connector per run. |
proxy | proxy | Apify proxy on | Keep the default; the read runs through a proxy connection. |
Output Example
Sample shape: values are illustrative placeholders, not from a live record.
{"productId": "900001","sku": "SAMPLESKU1","title": "Sample Brand 9kg Front Load Washing Machine","url": "https://www.appliancesonline.com.au/product/sample-product-9kg-900001/","brand": "Sample Brand","manufacturer": { "name": "Sample Manufacturer", "url": "/brand/sample-brand/" },"price": 1299.0,"rrp": 1699.0,"savings": 400.0,"currency": "AUD","onSale": true,"inStock": true,"stockStatus": 1,"stockByWarehouse": { "sample-whse": 3 },"popularity": 504321,"featured": true,"badges": ["Made In Sampleland"],"images": ["https://www.appliancesonline.com.au/public/images/sample-gallery-000000.png"],"media": ["https://www.appliancesonline.com.au/public/video/sample-video.mp4"],"attr": { "attr_Brand": "Sample Brand", "attr_Washing_Machine_Type": "Front load" },"warrantyNote": "Sample manufacturer warranty terms apply to this product.","specs": { "Key Specifications": [{ "name": "Brand", "value": "Sample Brand", "url": null }] },"manuals": [{ "title": "User manual", "type": "manual", "url": "https://www.appliancesonline.com.au/public/manuals/sample-00000000.pdf" }],"delivery": { "services": [{ "service": "Sample delivery service", "detail": "Sample delivery detail text.", "included": true }] },"questions": [{ "id": "1", "question": "Does this come with a power cord?", "askedBy": "Sample User", "answers": [{ "answer": "Yes, a standard cord is included.", "answeredBy": "Sample Support Team", "answeredAt": "2026-01-01T00:00:00Z" }] }],"reviews": [{ "reviewId": "0000000001", "rating": 5.0, "title": "Sample review", "reviewText": "Sample review text describing this sample product.", "author": "sample-user", "submittedAt": "2026-01-01T00:00:00Z", "isSyndicated": false, "photos": null }],"reviewCount": 128,"rating": 4.6,"ratingBreakdown": { "fiveStarCount": 100, "fourStarCount": 18, "threeStarCount": 5, "twoStarCount": 3, "oneStarCount": 2 },"reviewSummary": "Sample customers describe this product favorably in this generated summary.","bestFeatures": [{ "tag": "design", "count": 4 }],"worstFeatures": [{ "tag": "packaging", "count": 1 }],"scope": "washers-and-dryers/washing-machines","searchMode": "category","scrapedAt": "2026-01-01T00:00:00Z"}
Plan Requirement
Any Apify account that can start a run can use this actor. Reading this storefront worked on a plain datacenter connection in testing (the site serves its product data as JSON), so the default proxy setting needs no action. The actor retries with a fresh connection automatically when one is refused. For large or frequent runs you can pick the residential proxy group under Proxy & connection, but it is not required. If your account is not allowed to use the connection you picked, the run log says so ("The selected connection is unavailable to this run" and "Continuing on a backup connection") instead of reporting an empty result, and if no page can be read at all the run fails with a message rather than returning an empty dataset.
FAQ
How much does it cost?
You pay per product returned, plus the detail-enrichment surcharge when Fetch product details or Fetch customer reviews is on (charged once per enriched product, however many reviews or questions it carries). The Pricing tab shows the current rates. Reviews and questions do not add a charge of their own. To keep cost predictable, Max products caps the run, and Max reviews per product and Max questions per product default to 20 each (maximum 1000), so a run never pulls an unbounded feed.
Is it legal to scrape Appliances Online?
This actor collects only publicly available product listing and review data. You are responsible for how you use it: follow Appliances Online's terms and the laws that apply to you, and get legal advice if you plan commercial redistribution. Product prices and specifications are generally facts, but review text, photos and manufacturer content may be subject to third-party rights.
Can I get only new, changed or newly out-of-stock products on a schedule?
Yes. Schedule the actor from the Schedules tab, turn on Incremental mode and set Max products to 0 (or at least the size of every tracked scope). Each run then returns only NEW, UPDATED and REAPPEARED products (and EXPIRED ones if you turn that on too), and unchanged products are not billed. With a smaller Max products value, incremental runs can miss changes below the cut (EXPIRED detection is skipped for such runs); see How Max products shapes a run.
Does Resume avoid paying twice for products I already collected?
Yes. Paste the earlier run or dataset id into Resume and the run skips every product that run already collected, so you are only billed for products it did not have. The run log shows Resume: skipping N product(s). A resumed run never marks products EXPIRED.
Why did my run fail instead of returning an empty dataset?
If the site refuses every request, the run stops with a clear message so "no products in this category" is never confused with "nothing could be read". Run it again in a few minutes. If only some scopes could be read, you still get what was found from the rest.
What happens if I paste a category or sale link into Product mode?
It still works: any entry that is not a product link or id is browsed the same way Browse mode browses it, and every product found in it is fully enriched, same as a pasted product link.
Can I use it with AI agents or MCP?
Yes. Call it from any Apify integration or MCP client, and use the connector field to push results into Notion, Linear or Airtable.
๐ Want more electronics data?
Pair this actor with these related scrapers from the same team:
| ๐ Dienmayxanh Scraper Scrape dienmayxanh.com home appliances and electronics with full specifications, current... | ๐ PB Tech Scraper Scrape pbtech.co.nz products with full specifications, price, brand, condition, per-store... |
| ๐ Darty Scraper Scrape Darty (darty.com) products: current price plus strike-through reference price and... | ๐ Yodobashi Scraper Scrape yodobashi.com electronics and appliances: JPY price, list price and discount... |
| ๐ Bic Camera Scraper Scrape Bic Camera (biccamera.com) products: JPY price, list price and discount, Bic Point... | ๐ Currys UK Scraper Scrape Currys UK products, including electronics, home appliances, computers, TVs and... |
๐ Browse all abotapi scrapers
๐ฌ Support
- ๐ Found a bug or a missing field? Open a ticket on the Issues tab. We usually reply within hours.
- ๐ ๏ธ Need another site, extra fields or a private build? Email contact@abotapi.com.
- โญ Enjoying it? A quick review on the actor page helps other users find it.