Domain.com.au Property Scraper
Pricing
from $2.00 / 1,000 results
Domain.com.au Property Scraper
Scrape property listings from Domain.com.au — Australia's second largest real estate platform with 350K+ active listings. Extract price, auction data, price guide, agent info, school catchments, features and inspection times by suburb, listing type and filters.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Haketa
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Extract property listings from Domain.com.au — Australia's second largest real estate platform (News Corp) with 350K+ active listings and 9M+ monthly visitors. Covers sale, rent and sold properties with full auction data, price guide, agent info, school catchments and more.
What It Does
Scrapes Domain.com.au search result pages and optionally fetches individual listing detail pages. Returns structured JSON for each property including address, price, property type, bedrooms/bathrooms, agent info, description, features and auction status.
Default run (prefill input): Scrapes ~20-50 sale listings from Sydney CBD, completes in under 3 minutes, and produces a non-empty dataset.
How It Works
Domain.com.au is a Next.js application. This actor:
- Fetches search page HTML via
got-scrapingwith Australian residential proxy - Parses listing cards from the DOM using Cheerio (
[data-testid*="listing-card"]) - Extracts listing ID, URL, price, address, beds/baths/cars, agent, property type and tags
- Paginates via
?page=2,?page=3etc. - Optionally fetches each listing's detail page for rich data (description, features, inspection times)
No browser or Playwright needed — pure HTTP + HTML parsing.
Input
Quick Start (Default)
The actor runs out of the box with no configuration. Default input scrapes sale listings from Sydney:
{"listingType": "sale","suburbs": ["sydney-nsw-2000"],"maxListings": 50,"maxPages": 5}
Full Example
{"listingType": "sale","suburbs": ["bondi-beach-nsw-2026", "south-yarra-vic-3141"],"propertyTypes": ["house", "apartment"],"minBedrooms": 2,"maxBedrooms": 4,"minPrice": 500000,"maxPrice": 1500000,"auctionOnly": false,"scrapeDetails": true,"maxListings": 200,"maxPages": 10,"requestDelay": 2000,"maxConcurrency": 1}
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
listingType | string | sale | sale, rent or sold |
suburbs | array | ["sydney-nsw-2000"] | Suburb slugs (see list below) |
startUrls | array | [] | Direct search or listing URLs |
propertyTypes | array | [] | Filter: house, apartment, townhouse, villa, land, rural |
minBedrooms | integer | 0 | Minimum bedrooms (0 = no filter) |
maxBedrooms | integer | 0 | Maximum bedrooms (0 = no filter) |
minPrice | integer | 0 | Minimum price AUD (0 = no filter) |
maxPrice | integer | 0 | Maximum price AUD (0 = no filter) |
auctionOnly | boolean | false | Only scrape auction listings |
scrapeDetails | boolean | false | Fetch detail pages for description, features, inspections. Set true for production. |
maxListings | integer | 50 | Total listings cap (0 = unlimited) |
maxPages | integer | 5 | Pages per suburb (~20 listings each) |
proxyConfiguration | object | AU residential | Australian residential proxy strongly recommended |
requestDelay | integer (ms) | 1500 | Delay between requests |
maxConcurrency | integer | 1 | Parallel requests (keep low) |
Suburb Slugs
Format: {suburb-name}-{state}-{postcode} (lowercase, hyphens)
Sydney
| Slug | Suburb |
|---|---|
sydney-nsw-2000 | Sydney CBD |
bondi-beach-nsw-2026 | Bondi Beach |
surry-hills-nsw-2010 | Surry Hills |
manly-nsw-2095 | Manly |
parramatta-nsw-2150 | Parramatta |
newtown-nsw-2042 | Newtown |
mosman-nsw-2088 | Mosman |
chatswood-nsw-2067 | Chatswood |
cronulla-nsw-2230 | Cronulla |
Melbourne
| Slug | Suburb |
|---|---|
melbourne-vic-3000 | Melbourne CBD |
south-yarra-vic-3141 | South Yarra |
richmond-vic-3121 | Richmond |
st-kilda-vic-3182 | St Kilda |
fitzroy-vic-3065 | Fitzroy |
toorak-vic-3142 | Toorak |
brighton-vic-3186 | Brighton |
Other Cities
| Slug | City |
|---|---|
brisbane-qld-4000 | Brisbane CBD |
perth-wa-6000 | Perth CBD |
adelaide-sa-5000 | Adelaide CBD |
hobart-tas-7000 | Hobart CBD |
canberra-act-2601 | Canberra CBD |
gold-coast-qld-4217 | Gold Coast |
Output
Search Mode (scrapeDetails: false)
Fast extraction from search page cards:
{"listingId": "2020804017","listingType": "sale","saleMethod": null,"url": "https://www.domain.com.au/4-29-beach-road-bondi-beach-nsw-2026-2020804017","price": 1500000,"priceType": "guide","priceDisplay": "Buyers guide $1,500,000","address": "4/29 Beach Road, Bondi Beach","suburb": "Bondi Beach","state": "NSW","postcode": "2026","propertyType": "Apartment / Unit / Flat","bedrooms": 2,"bathrooms": 1,"carSpaces": null,"agentName": "Zakir Abdallaoui","agencyName": "Sydney Sotheby's International Realty","tags": ["New"],"isAuction": false,"searchSuburb": "bondi-beach-nsw-2026","scrapedAt": "2026-04-30T20:19:44.522Z"}
Detail Mode (scrapeDetails: true)
Rich data from individual listing pages:
{"listingId": "2020301768","listingType": "sale","url": "https://www.domain.com.au/castlereagh-sydney-nsw-2000-2020301768","price": null,"priceType": "contactAgent","priceDisplay": "Contact Agent","address": "111 Castlereagh","suburb": "Sydney","state": "NSW","postcode": "2000","propertyType": "apartment","bedrooms": 2,"bathrooms": 2,"carSpaces": 1,"agentName": "Belle Property International","description": "Taking in the glorious views of Sydney Harbour...","features": ["Air conditioning", "Dishwasher", "Intercom", "Floorboards"],"images": ["https://rimh2.domainstatic.com.au/..."],"tags": ["New"],"scrapedAt": "2026-04-30T20:10:52.341Z"}
Price Parser
Australian property price formats are parsed into structured data:
| Display Text | priceType | price | priceMin | priceMax |
|---|---|---|---|---|
$1,200,000 | fixed | 1200000 | — | — |
$800,000 - $880,000 | range | 800000 | 800000 | 880000 |
Buyers Guide $1,500,000 | guide | 1500000 | — | — |
Price Guide $1.2M - $1.32M | guide | 1200000 | 1200000 | 1320000 |
Offers Over $850,000 | offersOver | 850000 | — | — |
From $650,000 | from | 650000 | — | — |
Contact Agent | contactAgent | — | — | — |
Auction | auction | — | — | — |
Expressions of Interest | eoi | — | — | — |
$450 per week | perWeek | 450 | — | — |
Australia-Specific Fields
Auction Detection
Listings with auction sale method are flagged with isAuction: true and saleMethod: "auction". Use auctionOnly: true to filter exclusively for auction listings.
Tags
Market sentiment indicators extracted as boolean flags:
isPriceReduced— seller dropped the asking priceisUnderContract— sale agreed, pending settlementisHotProperty— high demandisNewListing— recently listed
Detail Page Data (requires scrapeDetails: true)
description— full listing textfeatures— property features (aircon, dishwasher, pool etc.)inspectionTimes— upcoming open house datesschoolCatchments— nearby school zonesnbnConnection— internet connection typefloorplanUrl— floor plan imagecouncilArea— local municipality
Modes
Search Mode (default, fast)
Set scrapeDetails: false. Extracts basic data from search page cards. ~20-50 listings per minute.
Detail Mode (rich data)
Set scrapeDetails: true. Fetches each listing's detail page. ~3-5 listings per minute. Returns description, features, inspections and more.
Direct URL Mode
Pass individual listing URLs in startUrls:
{"startUrls": [{ "url": "https://www.domain.com.au/106-ramsgate-avenue-bondi-beach-nsw-2026-2020804269" }]}
Technical Notes
- Proxy: Domain.com.au blocks datacenter IPs aggressively. The default config uses Apify's RESIDENTIAL proxy pool with AU country. This is required for reliable operation.
- Rate Limiting: Keep
requestDelayat 1500ms+ andmaxConcurrencyat 1-2. - Architecture: Domain uses Next.js SPA. Listing data is extracted from server-rendered HTML cards via Cheerio DOM parsing. No browser or Playwright needed.
- Pagination: Each search page shows ~20 listing cards. The actor paginates via
?page=Nparameter. - Images: Property images from search cards. Detail pages may provide additional high-resolution images.
Cost & Performance
| Mode | Speed | CU per 100 listings |
|---|---|---|
Search only (scrapeDetails: false) | ~20-50/min | ~0.01 |
With details (scrapeDetails: true) | ~3-5/min | ~0.05 |
Changelog
| Version | Date | Notes |
|---|---|---|
| 1.0.0 | 2026-04-30 | Initial release — HTML + Cheerio extraction, auction detection, price parser, agent info, detail page enrichment |