Du sätter dig äntligen för att göra outreach, och den första timmen försvinner i ett kalkylark du inte litar på. Google Maps-flikar överallt. Kopiera, klistra in, fixa formatering, leta efter saknade telefonnummer. Det är precis den typen av jobb som gör att du tappar momentum direkt.
Marknadschefer känner av det när kampanjer behöver nya prospekt varje vecka. Byråägare känner av det när varje kund ber om ”bara 200 leads till”. Och om du driver ett litet lokalt företag gör du förmodligen konkurrentresearch på samma klumpiga sätt. Den här Bright Data Sheets-automationen gör en plats + ett nyckelord till ett strukturerat Google Sheet du faktiskt kan använda.
Nedan ser du hur flödet körs, vad det ersätter, vad du behöver koppla in och de små fallgroparna som brukar fälla folk första gången.
Så fungerar den här automationen
Se hur detta löser problemet:
n8n Workflow Template: Bright Data till Google Sheets: rensade Maps-leads snabbt
flowchart LR
subgraph sg0["📝 Form Trigger - Start Property Search Flow"]
direction LR
n0["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/form.svg' width='40' height='40' /></div><br/>📝 Form Trigger - Start Prope.."]
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>📤 Trigger Bright Data Scrapi.."]
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>⏳ Check Scraping Job Status"]
n3@{ icon: "mdi:cog", form: "rounded", label: "⏱️ Wait Before Retry", pos: "b", h: 48 }
n4["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>📥 Fetch Property Listing Data"]
n5@{ icon: "mdi:database", form: "rounded", label: "📄 Save Property Data to Goog..", pos: "b", h: 48 }
n6@{ icon: "mdi:swap-horizontal", form: "rounded", label: "✅ Check If Scraping Complete", pos: "b", h: 48 }
n7@{ icon: "mdi:swap-horizontal", form: "rounded", label: "📊 Validate Property Data Exi..", pos: "b", h: 48 }
n3 --> n2
n2 --> n6
n6 --> n7
n6 --> n3
n4 --> n5
n7 --> n4
n1 --> n2
n0 --> n1
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n6,n7 decision
class n5 database
class n1,n2,n4 api
classDef customIcon fill:none,stroke:none
class n0,n1,n2,n4 customIcon
Utmaningen: att göra Google Maps-resultat till användbara leads
Google Maps är toppen för att hitta företag. Det är uselt för att bygga en repeterbar leadlista. Du söker ”dentists in Austin”, klickar runt, öppnar profiler, plockar upp ett telefonnummer (om det finns) och klistrar in i ett ark som långsamt blir en röra. Sedan inser du att hälften av raderna saknar URL:er, vissa adresser är ofullständiga och du är inte ens säker på vilka listningar du redan fångade förra veckan. Ärligt talat är den värsta delen den mentala belastningen. Du lägger mer energi på att hantera processen än på outreachen som faktiskt driver intäkter.
Det blir mycket snabbt. Här är där det oftast faller isär i riktiga team.
- Varje manuell kopiera-klistra-in-runda ger lite olika kolumner, vilket gör sortering och filtrering till ett senare problem.
- Telefonnummer och URL:er är lätta att missa eftersom du hoppar mellan flikar och profiler hela dagen.
- När någon ber om ”samma lista, fast för tre städer till” börjar du i princip om från noll.
- Fel smyger sig in utan att märkas, så din outreach misslyckas av saker som ser ut som ”dåliga leads” men egentligen är ”dålig datainmatning”.
Lösningen: Bright Data hämtar listningar, n8n skriver dem till Sheets
Det här flödet ersätter den röriga rutinen ”sök, klicka, kopiera, klistra in” med en enkel input: ett webbformulär där du anger plats och nyckelord. När du skickar in skickar n8n en begäran till Bright Datas Google Maps-dataset och fortsätter sedan att kontrollera jobbstatus tills skrapningen är klar. När resultaten är redo hämtar flödet företagsraderna och lägger till dem i ditt Google Sheet i prydliga kolumner. Namn, adresser, betyg, telefonnummer och Google Maps-URL:er dyker upp utan att du rör en enda flik. Om skrapningen inte är klar ännu väntar flödet och försöker igen, så du behöver inte sitta och passa det.
Flödet startar med en formulärinsändning i n8n. Bright Data gör grovjobbet med att samla in Google Maps-listningar, och n8ns ”redo”-kontroller håller det stabilt. Till sist blir Google Sheets ditt strukturerade system of record, redo för outreach eller analys.
Vad som förändras: före vs. efter
| Detta elimineras | Effekten du märker |
|---|---|
|
|
Effekt i verkligheten
Säg att du tar fram leads för 3 nischer varje vecka (som ”takläggare”, ”rörmokare” och ”ventilation/kyla”) i 2 städer. Manuellt, om du lägger kanske 2 minuter per listning på att öppna profilen, kopiera telefonnumret, klistra in adressen, fånga URL:en och rensa raden, så är 100 listningar cirka 3 timmar. Med det här flödet skickar du in 6 formulärposter på under 10 minuter och väntar sedan på att Bright Data ska leverera resultat (oftast några minuter). Du granskar fortfarande arket, men du granskar data — du skapar den inte.
Krav
- n8n-instans (prova n8n Cloud gratis)
- Självhosting-alternativ om du föredrar det (Hostinger fungerar bra)
- Bright Data för åtkomst till Google Maps-datasetet.
- Google Sheets för att lagra och dela leads.
- Bright Data API-nyckel (hämta den i din Bright Data-dashboard).
Kunskapsnivå: Medel. Du kopplar in inloggningar, klistrar in ett Sheet-ID och testar en formulärinsändning.
Behöver du hjälp att implementera detta? Prata med en automationsexpert (gratis 15-minuters konsultation).
Flödets gång
En formulärinsändning startar allt. Du anger en plats (stad/delstat/land) och ett nyckelord (bransch eller företagstyp). Den enda inputen blir sökspecen för skrapningen.
Flödet startar ett Bright Data-skrapjobb. n8n skickar en HTTP-begäran till Bright Datas Google Maps-dataset och får tillbaka en jobbreferens som används för att följa status.
Statuskontroller gör det tillförlitligt. n8n pollar Bright Data för att se om resultaten är redo, och om inte väntar det en kort stund och kontrollerar igen. Det finns också ”gate”-kontroller som bekräftar att skrapningen gav data innan flödet går vidare.
Resultaten hamnar i Google Sheets. När listningarna är tillgängliga hämtar flödet posterna och lägger till dem i ditt ark med konsekventa kolumner (namn, adress, betyg, telefonnummer, URL).
Du kan enkelt ändra utkolumnerna för att ta med saker som antal recensioner eller webbplats-URL beroende på dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: Konfigurera formulärtriggern
Det här arbetsflödet startar när en användare skickar in intagsformuläret för en Zillow-sökning av fastigheter.
- Lägg till och öppna 📝 Intake Form Start.
- Ställ in Form Title på
Zillow Property Search. - Skapa formulärfält: Location (obligatoriskt) och en rullista Listing Category med alternativen
House for rentochHouse for sale. - Bekräfta att 📝 Intake Form Start är kopplad till 🚀 Launch Scraping Request.
Steg 2: Anslut Google Sheets
Listningsposter läggs till i ett Google Sheet efter att skrapningen är klar.
- Öppna 📄 Append Listings to Sheet.
- Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter.
- Ställ in Operation på
append. - Ställ in Document på
[YOUR_ID]och Sheet Name påZillow. - Mappa kolumnerna med uttryck som URL →
{{ $json.hdpUrl }}, City →{{ $json.city }}och Street Address →{{ $json.address }}.
Steg 3: Konfigurera start av skrapning och övervakning
Den här delen triggar Bright Data-skrapningen och pollar tills snapshoten är redo.
- Öppna 🚀 Launch Scraping Request och ställ in URL på
https://api.brightdata.com/datasets/v3/trigger. - Ställ in Method på
POSToch JSON Body på={ "input": [ { "location": "{{ $json.Location }}", "listingCategory": "{{ $json['Listing Category'] }}", "HomeType": "", "days_on_zillow": "" } ]}. - Konfigurera frågeparametrar:
dataset_id=gd_lfqkr8wm13ixtbd8f5,include_errors=true,type=discover_new,discover_by=input_filters,limit_per_input=2. - Ställ in headern Authorization på
Bearer [CONFIGURE_YOUR_TOKEN]i 🚀 Launch Scraping Request, ⏳ Monitor Scrape Progress och 📥 Retrieve Listing Records. - I ⏳ Monitor Scrape Progress, ställ in URL på
=https://api.brightdata.com/datasets/v3/progress/{{ $json.snapshot_id }}och lägg till frågeparameternformat=json. - I ✅ Scrape Ready Gate, ställ in villkoret till att
{{ $json.status }}är lika medready. - Konfigurera ⏱️ Pause Before Next Check med Unit
minutesoch Amount1, och bekräfta sedan att den loopar tillbaka till ⏳ Monitor Scrape Progress.
⚠️ Vanlig fallgrop: Bright Data-tokenen är en platshållare. Ersätt [CONFIGURE_YOUR_TOKEN] i varje HTTP-header innan ni testar, annars kommer anropen att misslyckas med behörighetsfel.
Steg 4: Konfigurera hämtning och validering av data
När skrapningen är redo kontrollerar arbetsflödet om det finns poster och hämtar snapshot-data.
- I 📊 Confirm Data Presence, ställ in villkoret till att
{{ $json.records }}inte är lika med{{ 0 }}. - Öppna 📥 Retrieve Listing Records och ställ in URL på
=https://api.brightdata.com/datasets/v3/snapshot/{{ $json.snapshot_id }}. - Säkerställ att 📊 Confirm Data Presence skickar vidare till 📥 Retrieve Listing Records när data finns.
- Bekräfta att 📥 Retrieve Listing Records skickar vidare till 📄 Append Listings to Sheet för lagring.
Tips: Pollningsloopen drivs av ✅ Scrape Ready Gate → ⏱️ Pause Before Next Check → ⏳ Monitor Scrape Progress. Behåll väntetiden på 1 minut om inte ert Bright Data-dataset kräver längre bearbetningstid.
Steg 5: Testa och aktivera ert arbetsflöde
Kör ett manuellt test för att validera skrapningen och att rader läggs till i arket end-to-end innan ni aktiverar.
- Klicka på Execute Workflow och skicka in 📝 Intake Form Start med en giltig Location och Listing Category.
- Bekräfta att 🚀 Launch Scraping Request returnerar ett
snapshot_idoch att ⏳ Monitor Scrape Progress returnerarstatus-uppdateringar. - Verifiera att 📥 Retrieve Listing Records returnerar listningar och att 📄 Append Listings to Sheet skriver rader till arket
Zillow. - När resultatet ser korrekt ut, växla arbetsflödet till Active för användning i produktion.
Se upp för
- Bright Data-uppgifter kan löpa ut, eller så kanske din åtkomst till datasetet inte är aktiverad. Om det strular, kontrollera först behörigheterna i din Bright Data-dashboard för Google Maps-datasetet.
- Om du använder Wait-noder eller extern bearbetning varierar körtiderna. Öka väntetiden om statuskontrollen ibland växlar till ”redo” men nästa begäran returnerar tom data.
- Behörighetsfel i Google Sheets är oftast ett OAuth-problem, inte själva flödet. Återanslut din Google Sheets-inloggning i n8n och bekräfta att målarket är åtkomligt för det Google-kontot.
Vanliga frågor
Oftast cirka 30 minuter när du har din Bright Data API-nyckel och ett Google Sheet redo.
Ja, men du vill ha någon som är bekväm med att koppla OAuth-inloggningar. Ingen kodning krävs, bara noggrann setup och en testkörning.
Ja. n8n har ett gratis självhostat alternativ och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna med Bright Data API-användning utifrån din plan.
Två alternativ: n8n Cloud (hanterat, enklast setup) eller självhosting på en VPS. För självhosting är Hostinger VPS prisvärt och hanterar n8n bra. Självhosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Du kan utöka vad som sparas genom att justera HTTP-begäran i ”Retrieve Listing Records” så att den inkluderar extra fält som Bright Data tillhandahåller (som antal recensioner eller webbplats-URL), och sedan mappa dem till nya kolumner i ”Append Listings to Sheet”. Vanliga justeringar är att ändra resultatgränsen, köra flera nyckelord per plats och lägga till en kolumn för ”källa” så att du kan spåra vilken sökning som skapade varje rad.
För det mesta beror det på en ogiltig API-nyckel eller att du saknar åtkomst till Google Maps-datasetet i ditt Bright Data-konto.
Det beror mer på din Bright Data-plan än på n8n. På n8n Cloud Starter jobbar du inom din månatliga körningskvot, och varje sökning kan ta flera körningar eftersom flödet pollar efter status innan det hämtar resultat. Om du självhostar finns ingen körningsbegränsning från n8n, så genomströmningen handlar mest om serverresurser och Bright Datas rate limits. I praktiken kör många team några sökningar per dag utan att tänka på det och batchar större uttag när de behöver en ny lista.
För just det här flödet har n8n några fördelar: mer avancerad logik med obegränsad branching utan extra kostnad, ett självhostat alternativ för obegränsade körningar samt inbyggda mönster för HTTP + väntan/pollning som ofta blir krångliga och dyra i många no-code-verktyg. Zapier och Make kan fortfarande göra det, men loopen ”kontrollera status, vänta, försök igen, och hämta sedan” är där kostnader och komplexitet smyger sig in. Om du bara gör små uttag ibland kanske du inte bryr dig. Om detta blir en veckorutin kommer du sannolikt göra det. Prata med en automationsexpert om du är osäker på vad som passar.
När detta väl rullar blir byggandet av leadlistor en repeterbar input, inte en veckovis plåga. Flödet tar hand om de tråkiga delarna, och ditt ark förblir tillräckligt strukturerat för att du ska kunna lita på det.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.