π Score Zillow investment properties with ScrapeUnblocker, Gemini, and Google Sheets
β‘ 11 views Β· π Market Research & Insights
π‘ Pro Tip β HTTP Request scraping tends to break when sites update their markup. If youβre scraping a major platform, check if ScraperNode covers it β it has maintained scrapers for LinkedIn, Instagram, TikTok, YouTube, and 20+ other platforms that return structured data.
Description
Quick overview
This workflow runs every 4 hours to scrape Zillow listings from a defined search URL using ScrapeUnblocker, deduplicates them against an existing Google Sheet, and uses Google Gemini to rate each new property as an investment before logging the results back to Google Sheets.
How it works
- Runs every 4 hours on a schedule.
- Reads previously saved Zillow listings from Google Sheets to use their URLs for deduplication.
- Scrapes the configured Zillow search results page via ScrapeUnblocker and extracts listing details from the pageβs schema.org JSON-LD.
- Filters out listings whose URLs already exist in the Google Sheet and keeps only new listings.
- Processes each new listing one by one and asks Google Gemini to generate a 1β10 investment rating with a one-sentence reason.
- Appends each scored listing (address, URL, price, beds, sqft, location, scrape time, and AI output) to the same Google Sheet.
Setup
- Add Google Sheets credentials and select the target spreadsheet and sheet for both reading existing rows and appending new results.
- Add ScrapeUnblocker credentials and confirm the proxy country and CSS selector settings match the Zillow page you want to scrape.
- Add Google Gemini credentials in the Google Gemini Chat Model node.
- Update the Zillow search URL in the Set Search URL step to your desired region, filters, and map bounds.
π Nodes Used
Google Sheets, Schedule Trigger, AI Agent, Google Gemini Chat Model
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File