cd sandbox/gta-pet-businesses

GTA pet businesses

Read-only sample output from LeadBuilder.

~/leadbuilder/gta-pet-businesses/summary

This is a real sample output from LeadBuilder, a Python pipeline I built to research business contact details. For this run, I searched OpenStreetMap for pet businesses in the Greater Toronto Area, crawled their websites, and collected public contact information. The pipeline code is private. This page only shows the results, and visitors cannot start a crawl.

Niche: Pet businesses. Region: Greater Toronto Area. Run on September 30, 2026.

What the run produced

458 businesses discovered
215 qualified and shown here
With a phone number
214
With a website
184
Websites crawled
161
Skipped because robots.txt said no
7
With an email address
57
Part of a chain
102

Email check: each email's domain was checked to confirm it accepts mail. Individual mailboxes were not confirmed.

~/leadbuilder/gta-pet-businesses/records.csv

Browse the records

215 records match.

Business Address Email Phone Crawl result
Poka Dottie's Dog Grooming 946 Queen Street East info@p•••.ca +1 437-451-1124 Crawled successfully
Pooches n' Pals 356 Lakeshore Road West, Mississauga — +1 905-278-2275 Crawled successfully
Poochie Spaw 116 Lakeshore Road West — +1 905-337-0832 Site returned HTTP 523
PP Pet 533 Yonge Street p•••@g•••.com — Crawled successfully
Puff n Purr 108 Finch Avenue West — +1 905-508-0123 No website listed
Ren's Pet Depot 980 Taunton Road East, Whitby — +1 905-579-4611 No website listed
Ren's Pets — info@r•••.com +1 519-780-4312 Crawled successfully
Ren's Pets — info@r•••.com +1 905-863-4567 Crawled successfully
Ren's Pets 2995 Dundas Street West info@r•••.com +1 519-780-4312 Crawled successfully
Ren's Pets Depot 4002 Trafalgar Road, Oakville, L6H 7B8 info@r•••.com +1 905-257-4611 Crawled successfully
Scooby Groom 473A Rogers Road contact@s•••.com +1 437-780-3425 Crawled successfully
Scooby Groom 1737 Lakeshore Road West, Mississauga, Ontario, L5J 1J4 contact@s•••.com +1 365-747-0677 Crawled successfully
Scruff and Ruff Dog Grooming & Daycare 1801 Lakeshore Road West, Mississauga, Ontario s•••@g•••.com +1 905-822-0111 Crawled successfully
Second Tub — — +1 905-891-3647 Connection problem (ConnectionError)
Shannon’s Place 20 Albert Franck Place, M5A 4B4 — +1 647-267-5271 No website listed
ShrimpFever 210 Silver Star Boulevard — +1 647-667-6161 Crawled successfully
T T Aquarium & Pets 1160 Albion Road, Etobicoke, M9V 1A8 — +1 647-349-3732 No website listed
Tail Blazers Etobicoke — +1 403-451-7569 Crawled successfully
Tail Blazers 6055 Mavis Road — +1 403-451-7569 Crawled successfully
Tails & Scales Pet Boutique — info@t•••.ca +1 416-766-7387 Crawled successfully
Tailspin Dog Spa 12 Irwin Avenue info@t•••.ca +1 416-920-7387 Crawled successfully
The Ark Pet Spaw & Emporium — info@t•••.ca +1 905-257-5337 Crawled successfully
The Bone & Biscuit Co. — — +1 416-252-7387 Connection problem (ConnectionError)
The Dog's Garage — — +1 905-271-7781 Skipped: page too large
The Doggie Spa 2940 Charleston Sideroad, Caledon — +1 519-927-9249 Not crawled
~/leadbuilder/how-it-works.md

How it works

  1. Set up the project

    Choose the niche, the city or region, and a record limit in a settings file. The same pipeline can then be run for any type of business in any area.

  2. Discover businesses

    Search OpenStreetMap for businesses that match the niche and region, and save each one with its name, address, phone, website and map location.

  3. Crawl websites politely

    Visit each business website, check robots.txt first, and skip any site that asks not to be crawled. In this run, 7 sites were skipped for that reason.

  4. Extract contacts

    Read the crawled pages to find email addresses, phone numbers and social media profiles, and record the page where each one was found.

  5. Clean and remove duplicates

    Tidy up the data and merge records that are really the same business. Chain stores are marked so they can be told apart from independent shops.

  6. Check emails

    Check that each email's domain is set up to receive mail. Individual mailboxes are not confirmed, so the results are shown honestly as domain checks.

  7. Export

    Keep only the qualified records and save them as a CSV, with a source link for every piece of data.

  8. Showcase and test

    Write a README that explains how to set up and run the pipeline, add automated tests that check each step works, and prepare sample data. This page is built from that sample data.