Rightmove Scanner avatar

Rightmove Scanner

Deprecated

Pricing

from $20.00 / 1,000 results

Go to Apify Store
Rightmove Scanner

Rightmove Scanner

Deprecated

Buying a home? This scraper tracks new and updated Rightmove listings in your chosen areas, giving you an edge by monitoring price changes and property updates over time.

Pricing

from $20.00 / 1,000 results

Rating

0.0

(0)

Developer

Andy

Andy

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

25 days ago

Last modified

Share

Rightmove Aggregator Actor

A powerful Apify Actor designed to scrape and aggregate property listings from Rightmove, the UK's leading property portal.

This tool is ideal for anyone looking to analyze property market trends, track price changes over time, and gain insights into market supply and demand. Unlike the Rightmove portal, which only shows the current state of listings, this Actor provides point-in-time data and calculates aggregated insights such as price reductions, days on the market, and pricing recommendations. This gives you a significant advantage for negotiation and investment decisions.


🚀 What this Actor does

  1. Scrapes property listings: The Actor uses a provided Rightmove search URL to scrape property listings based on your specified search criteria (location, price range, number of bedrooms, etc.).
  2. Captures point-in-time data: The Actor records the state of listings at the time of the scrape, including details like price, address, size, and more.
  3. Calculates aggregated insights: By analyzing historical data, the Actor provides valuable metrics such as:
    • Price reduction trends: Number of price reductions, heaviest and lightest reductions, and average reduction.
    • Days on market: How long a property has been listed.
    • Pricing recommendations: Categorizes properties as "bargain," "underpriced," "fair," "overpriced," or "extortionate" based on normalized costs.
    • Price per square meter: Helps compare properties of different sizes.
    • Supply analysis: Tracks the number of active and removed listings in a given area.

📝 Input

The Actor accepts the following input schema:

{
"search_area_name": "battersea-park",
"search_area_url": "https://www.rightmove.co.uk/property-for-sale/find.html?locationIdentifier=USERDEFINEDAREA%5E%7B%22polylines%22%3A%22opfyH%7E%7C%5B%3FvKhA%60RtAjHn%40%7CH%7CDpKtExFbEfCtBr%40jAkBtC%5Dc%40TZd%40pBn%40jFzEhFl%40rAm%40rAmCz%40%3FtAo%40%5DoBN_CiJ%7Br%40yCsBTs%40b%40GgAqJaAcAmA%3Fii%40d%40%22%7D&minPrice=550000&index=0&sortType=6&channel=BUY&transactionType=BUY&displayLocationIdentifier=undefined&maxPrice=650000&minBedrooms=1&maxBedrooms=1&propertyTypes=flat",
"max_listings": 2
}
  • search_area_name: A user-friendly name for the search area (e.g., "Battersea Park").
  • search_area_url: The URL of the Rightmove search results page with all desired filters (location, price range, number of bedrooms, etc.).
  • max_listings: The maximum number of listings to scrape.

📤 Output

The Actor produces two datasets:

  1. Point-in-Time Listings Dataset: Contains detailed information about each property listing at the time of the scrape. Example:
{
"id": "157164467",
"url": "https://www.rightmove.co.uk/properties/157164467",
"price": 625000,
"price_qualifier": "",
"address": "Queenstown Road, Battersea Park, SW11",
"postcode": "SW118NG",
"total_images": 9,
"has_floorplan": true,
"size_sqft": 559,
"size_sqm": 52,
"bedrooms": 1,
"bathrooms": 1,
"transaction_type": "BUY",
"is_featured": true,
"is_premium": false,
"update_reason": "Added on 21/01/2025",
"contact_number": "020 3840 3402",
"tenure_type": "LEASEHOLD",
"lease_length": null,
"annual_ground_rent": 330,
"annual_service_charge": 2500,
"council_tax_band": "E",
"has_garden": null,
"has_parking": null,
"as_of": "2026-02-07T21:40:26.608869"
}
  1. Aggregated Insights Dataset: Provides calculated metrics for each property, such as price reductions, days on market, and pricing recommendations. Example:
{
"id": "157164467",
"transaction_type": "BUY",
"property_status": "active",
"url": "https://www.rightmove.co.uk/properties/157164467",
"latest_list_price": 625000,
"original_list_price": 625000,
"price_qualifier": "",
"pricing_recommendation": "extortionate",
"address": "Queenstown Road, Battersea Park, SW11",
"postcode": "SW118NG",
"council_tax_band": "E",
"bedrooms": 1,
"bathrooms": 1,
"size_sqft": 559,
"size_sqm": 52,
"tenure_type": "LEASEHOLD",
"lease_length": null,
"annual_ground_rent": 330,
"annual_service_charge": 2500,
"has_parking": null,
"has_garden": null,
"has_floorplan": true,
"total_images": 9,
"price_per_square_metre": 12019.23,
"date_listed": "2025-01-21",
"days_on_market": 382,
"price_reduction_count": 0,
"heaviest_price_reduction": null,
"lightest_price_reduction": null,
"average_price_reduction": null,
"is_featured": true,
"is_premium": false,
"contact_number": "020 3840 3402",
"observation_window_start": "2026-02-07T19:12:25.152937",
"observation_window_end": "2026-02-07T21:54:11.741892"
}

🏁 Quick Start

  1. Prepare your input: Provide the Rightmove search URL with all desired filters and specify the maximum number of listings to scrape.
  2. Run the Actor: Execute the Actor using the Apify platform or locally using the provided Dockerfile.
  3. Analyze the results: Use the Point-in-Time Listings Dataset for raw data and the Aggregated Insights Dataset for market analysis.

💡 Key Features

  • Daily Scraping: Automate daily scrapes to track changes in property listings over time.
  • Aggregated Insights: Gain a deeper understanding of market trends, including price reductions, days on market, and pricing recommendations.
  • Customizable Search: Use your own Rightmove search URLs to tailor the scrape to your needs.
  • Data-Driven Decisions: Leverage structured data and insights to make informed property investment or negotiation decisions.

🛠️ Technical Details

  • Tech Stack: Python, Selenium, Pandas, Apify SDK
  • Dockerized: Easily deploy the Actor using the provided Dockerfile.
  • Storage: Data is stored in Apify Datasets for easy access and integration with other tools.
  • Extensible: The codebase is modular, allowing for easy customization and extension.

📚 Additional Information

  • Input Schema: See .actor/INPUT_SCHEMA.json for the full input schema.
  • Output Schema: See .actor/OUTPUT_SCHEMA.json for the full output schema.
  • Main Script: The main scraping logic is implemented in src/scripts/apify_scraper.py.
  • Utility Functions: Key utility functions for data processing and aggregation are located in src/common/utils.py.
  • Driver Implementation: The Selenium-based driver is implemented in src/common/driver.py.

🧑‍💻 Contributing

Contributions are welcome! Feel free to open issues or submit pull requests to improve the Actor.


📞 Support

For any questions or issues, please contact the repository owner or open an issue on GitHub.