Domain.com.au Real Estate Scraper
Pricing
from $1.00 / 1,000 results
Domain.com.au Real Estate Scraper
Scrape property listings from Domain.com.au with addresses, prices, bedrooms, images, inspections, agents. HTTP-only; no login or proxy required.
Pricing
from $1.00 / 1,000 results
Rating
5.0
(11)
Developer
Crawler Bros
Actor stats
12
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape Australian property listings from Domain.com.au — addresses, asking prices, bedrooms/bathrooms/carspaces, images, inspection times, agents, and coordinates. Parses the __NEXT_DATA__ JSON blob Domain ships in every search page. HTTP-only; no login, no cookies, no proxy required.
Output (per listing)
type=domain_listingid— Domain listing ID (e.g.2020305174)url— canonical listing URL (https://www.domain.com.au/...)title— first line of address + suburb (e.g.107/104 Fairway Drive, Norwest)price— numeric price when published (e.g.1000000)priceLabel— price string as displayed (e.g."$1,000,000","Auction","Contact agent")propertyType—House,ApartmentUnitFlat,Townhouse,Land, etc.bedrooms,bathrooms,carspaces(integers)address,suburb,state,postcodelatitude,longitudeimages— array of photo URLsinspections— array of{openTime, closeTime}ISO strings (when listed)agent—{name, photo}for the primary agentagencyName— brand/agency namescrapedAt
If no listings match, the actor emits a single domain_blocked sentinel record so runs exit 0.
Input
| Field | Type | Description |
|---|---|---|
searchUrls | string[] | Domain.com.au search URLs. Prefill: https://www.domain.com.au/sale/sydney-nsw/. Any /sale/, /rent/, or region URL works. |
maxItems | integer | Max listings per run. Default 3. |
proxyConfiguration | object | Optional — disabled by default. Domain works fine from datacenter IPs. |
Example output
{"type": "domain_listing","id": "2020305174","url": "https://www.domain.com.au/107-104-fairway-drive-norwest-nsw-2153-2020305174","title": "107/104 Fairway Drive, Norwest","price": 1000000,"priceLabel": "$1,000,000","propertyType": "ApartmentUnitFlat","bedrooms": 2,"bathrooms": 2,"carspaces": 1,"suburb": "Norwest","state": "NSW","postcode": "2153","latitude": -33.730362,"longitude": 150.95859,"images": ["https://rimh2.domainstatic.com.au/..."],"agencyName": "Obsidian Property Pty Ltd","scrapedAt": "2026-04-20T10:00:00Z"}
How it works
- For each entry in
searchUrls, the actor fetches the page withcurl_cffi(Chrome 131 TLS fingerprint). - The
__NEXT_DATA__script is parsed forprops.pageProps.componentProps.listingsMap— every property card is serialised there with full metadata. - Pagination is followed via
totalPages/?page=Nup tomaxItems. - Fields are only emitted when populated (no nulls).
FAQ
Do I need a proxy? No. Domain.com.au is reachable from Apify datacenter IPs.
Can I scrape /rent/ too? Yes — any URL under https://www.domain.com.au/sale/... or /rent/... works.
What about individual property pages? Provide any Domain listing detail URL; the actor will fetch just that one listing.
Why a sentinel record? If a search has no matches or the region slug is wrong, the actor still emits one record so downstream pipelines never see empty output.
Rate limits? Domain has no aggressive anti-bot system, but we cap at maxItems (500) and add a polite 0.4s delay between pages.