Apartment Rental Scraper Tracker
Automatically scrape daily apartment rental listings from real estate websites, organize the data in Google Sheets, and receive a summary email with new properties.
Tags
Apartment Scraper to Google Sheets
This workflow automatically searches the internet for current apartment rental listings (specifically configured for two-room apartments in Berlin, though fully customizable), scrapes detailed information from selected listings, and organizes the data into a Google Sheets spreadsheet. It runs daily and sends a summary email with new and updated listings.
What this workflow does
- Triggers daily at a specified time.
- Uses an AI agent to search the internet for relevant apartment listings on multiple real estate sites.
- Visits each listing URL to extract detailed apartment information.
- Parses the extracted data and prepares it for Google Sheets.
- Retrieves existing listing URLs from the Google Sheet.
- Compares new listings with existing ones to identify new and updated entries.
- Upserts new and existing listings into the Google Sheet and sends a summary email.
What you need
- Needle platform account with permission to schedule workflows and use AI tools.
- Google Sheets account with API access and a spreadsheet created to store apartment listings.
- Gmail account connected for sending summary emails.
Extracted Data Fields
The AI agent extracts the following details from each listing:
| Field | Description |
|---|---|
| Title | The headline of the listing |
| URL | Direct link to the listing |
| Warm Price | Total rent including utilities |
| Cold Price | Base rent excluding utilities |
| Rooms | Number of rooms |
| Size | Square footage or meters |
| Address | Location of the property |
| Available From | Move-in date |
| Landlord | Name of the agency or landlord |
| Description | General notes about the apartment |
| Source Site | Website where the listing was found |
| Scraped Date | Date the listing was recorded |
How the flow works
- Scheduled Trigger: Starts the workflow every day at 9 AM.
- Needle AI Agent: Runs a controlled search on the web with specific queries. It filters out invalid or unavailable listings and extracts key details into a structured format.
- Code Step: Parses the AI text output to extract a structured array of listings and prepares each listing for insertion into Google Sheets.
- Google Sheets (Get Existing URLs): Fetches the URLs of listings already stored in the sheet to detect duplicates and updates.
- Merge Step: Combines the new listings data with existing Google Sheets URLs for comparison.
- Comparison Code: Analyzes which listings are new and which are existing based on URLs. Computes counts of total, new, and updated listings.
- Google Sheets (Upsert Rows): Updates existing listing rows or inserts new rows in the spreadsheet based on the URL key, ensuring the sheet stays current without duplicates.
- Gmail (Send Email): Sends a daily summary email with counts of new and updated apartments, includes a link to the spreadsheet, and lists new apartment details for quick review.
Notes
- This workflow relies on text recognition of apartment availability. Listings that use unusual phrasing for unavailability might not be filtered perfectly.
- The AI agent is limited to publicly accessible listings and cannot bypass login walls or paywalled content.
- Be sure to set up the Google Sheet with the correct columns to match the data array order for proper upsertion.
- The scheduling and timezone can be adjusted to better fit your availability or apartment search pattern.
Want to showcase your own workflows?
Become a Needle workflow partner and turn your expertise into recurring revenue.
