Scrape Zoopla.co.uk to crawl millions of off market real estate properties from United Kingdom. Our real estate scraper also lets you monitor specific listing for sold properties. You can provide multiple off market search result listings to scrape/monitor.
This Zoopla sold properties Scraper will enable you scrape any sold listing from zoopla.co.uk/.
You can simply take your listing url from browser and enter it into this actor. This actor will crawl through all pages of particular listing and generate dataset for you.
Listing url is something you get when you perform the search on zoopla site https://www.zoopla.co.uk/house-prices Example listing urls :
You can apply any filter and use the url after filder as well.
📈 Extract Zoopla off market data listings on Zoopla
👀 This actor is not just scraper but also has monitoring capability. You can turn on monitoring mode and it will give you only newly sold properties compared to your previous scrapes.
📩 This actor also helps you to identify zoopla estimate for particular property
⬇️ Download Zoopla real estate data in Excel, CSV, JSON, and other formats
📝 | 📝 |
---|---|
Listing UPRN | Full Address |
Listing URL | Category |
Postal Code | Outcode |
Bathrooms | Bedrooms |
Floor Area | Living Rooms |
Tenure | Property Type |
Latitude | Longitude |
Energy Rating | Rent Estimate |
Sale Estimate | Historic Listings |
Historic Sales | Data Source |
For simple usecase, you just need to provide browser url of zoopla off market search result page & that's all. You can leave other fields as they are to be sensible defaults.
1{ 2 "listUrls": [ 3 { 4 "url": "https://www.zoopla.co.uk/house-prices/sw1w-0ny/?new_homes=include&view_type=list" 5 } 6 ], 7 "fullScrape": true, 8 "monitoringMode": false, 9 "threads" : 3 10}
Understading monitoring mode :
fullScrape
: This option is by default turned on. When enabled it always force actor to scrape complete listing from all pagination pages regardless of monitoring is enabled or not.
monitoringMode
: This open when turned on will only scrape newly found off market property listings compared to previously scraped properties by this actor. It's important to turn off fullScrape setting if you are using this mode. If you keep fullScrape on, it will re-scrape complete listing again.
threads
: Number of parallel threads to run for scraping
The scraped data is stored in the dataset of each run. The data can be viewed or downloaded in many popular formats, such as JSON, CSV, Excel, XML, RSS, and HTML.
The result for scraping a single property like this:
1{ 2 "url": "https://www.zoopla.co.uk/property/uprn/100022746879/", 3 "uprn": "100022746879", 4 "fullAddress": "Flat 57, Belgravia Court, 33 Ebury Street, London, SW1W 0NY", 5 "postcode": "SW1W 0NY", 6 "country": "England", 7 "outcode": "SW1W", 8 "latitude": 51.4953741, 9 "longitude": -0.1473962, 10 "bathrooms": null, 11 "bedrooms": null, 12 "floorAreaSqM": 76, 13 "livingRooms": null, 14 "tenure": "Leasehold", 15 "propertyType": "Flat/Maisonette", 16 "currentEnergyRating": "C", 17 "rentEstimate": { 18 "lowerPrice": 3600, 19 "currentPrice": 4050, 20 "upperPrice": 4550 21 }, 22 "saleEstimate": { 23 "lowerPrice": 1056000, 24 "currentPrice": 1111000, 25 "upperPrice": 1167000, 26 "confidenceLevel": "HIGH", 27 "valueChange": { 28 "numericChange": -164000, 29 "percentageChange": -12.862745098039216, 30 "saleDate": "2020-12-11" 31 }, 32 "ingestedAt": "2024-02-08T11:30:32.529Z" 33 }, 34 "historicListings": [ 35 { 36 "date": "2019-02-15", 37 "price": 1000000 38 } 39 ], 40 "historicSales": [ 41 { 42 "date": "2020-12-11", 43 "price": 1275000, 44 "percentageChange": 27.500000000000004, 45 "numericChange": 275000 46 }, 47 { 48 "date": "2020-10-16", 49 "price": 1000000, 50 "percentageChange": 269.68576709796673, 51 "numericChange": 729500 52 }, 53 { 54 "date": "1998-08-20", 55 "price": 270500, 56 "percentageChange": null, 57 "numericChange": null 58 } 59 ], 60 "soldPricesDataSource": "landRegistry" 61}
Since Zoopla allows only 1000 properties per listing/search result, you might want to break down your listing urls into smaller area if it has more than 1K results. Good News is that even if multiple list urls contains overlapping results, they will get deduplicated within same run data.
In case you need some custom solution, you can contact me : dhrumil@techvasu.com
Or learn more about me on github : https://github.com/dhrumil4u360
Yes, if you're scraping publicly available data for personal or internal use. Always review Websute's Terms of Service before large-scale use or redistribution.
No. This is a no-code tool — just enter a job title, location, and run the scraper directly from your dashboard or Apify actor page.
It extracts job titles, companies, salaries (if available), descriptions, locations, and post dates. You can export all of it to Excel or JSON.
Yes, you can scrape multiple pages and refine by job title, location, keyword, or more depending on the input settings you use.
You can use the Try Now button on this page to go to the scraper. You’ll be guided to input a search term and get structured results. No setup needed!