π£ Scrape and enrich Google Maps business leads with ScrapeUnblocker and Google Sheets
β‘ 14 views Β· π£ Lead Generation & Enrichment
π‘ 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 scrapes Google Maps search results for a chosen keyword and city using ScrapeUnblocker, extracts and deduplicates business leads, reverse-geocodes each listingβs coordinates with OpenStreetMap Nominatim, and appends the enriched lead data to Google Sheets.
How it works
- Runs manually when you click Execute workflow.
- Sets the target search keyword and city and builds the corresponding Google Maps search URL.
- Uses ScrapeUnblocker to fetch the Google Maps results page HTML.
- Parses the HTML to extract lead details such as business name, rating, review count, category, phone, website, and latitude/longitude.
- Cleans the extracted leads (including normalizing phone numbers) and removes duplicates based on business name.
- Sends each leadβs latitude/longitude to OpenStreetMap Nominatim Reverse Geocoding to retrieve a structured address, postcode, and a simple confidence flag.
- Appends the enriched lead record to a Google Sheets worksheet.
Setup
- Add ScrapeUnblocker credentials in the ScrapeUnblocker node.
- Add Google Sheets OAuth credentials and confirm the target spreadsheet, sheet name (Leads), and column mapping in the Google Sheets append step.
- Update the keyword and city values to match your lead search, or replace them with dynamic inputs.
- Ensure the OpenStreetMap Nominatim request includes a valid User-Agent header and adjust it to your contact details for compliance.
π Nodes Used
Google Sheets, HTTP Request
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File