🎣 Google Maps to Airtable lead scraper with GPT contact extraction from impressum

929 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.

View All Scrapers

Description

How it Works

This workflow automates the process of discovering companies in different cities, extracting their contact data, and storing it in Airtable.

  1. City Loop (Airtable → Google Maps API)

    • Reads a list of cities from Airtable.
    • Uses each city combined with a search term (e.g., SEO Agency, Berlin) to query Google Maps.
    • Marks processed cities as “checked” to allow safe restarts if interrupted.
  2. Business Discovery & Deduplication

    • Searches for businesses via Google Maps Text Search.
    • Checks Airtable to avoid scraping the same company multiple times.
    • Fetches detailed info for each business via Google Maps Place Details API.
  3. Impressum Extraction (Website → HTML Parsing)

    • Builds an Impressum page URL for each business.
    • Requests the HTML and cleans out ads, headers, footers, etc.
    • Extracts relevant contact info using an AI extractor (OpenAI node).
  4. Contact Information Extraction

    • Pulls out:
      • Decision Maker (Name + Position in one string, if available).
      • Email address (must be valid, containing @).
      • Phone number (international format if possible).
    • Filters out incomplete results (e.g., empty email).
  5. Database Storage

    • Writes company data back into Airtable:
      • Company name
      • Address
      • Website
      • Email
      • Phone number
      • Decision Maker (Name + Position)
      • Search term & city used

Setup Steps

1. Prerequisites

2. Authentication

3. Configuration

4. Execution

5. Results


Tips & Notes

**

🔗 Nodes Used

Airtable, HTTP Request, Execute Sub-workflow, Execute Workflow Trigger, Filter, OpenAI Chat Model

📥 Import

Download workflow.json and import into n8n: Workflow menu → Import from File

📖 Importing guide · 🔑 Credential setup