Healthcare Provider Lead Scraper avatar

Healthcare Provider Lead Scraper

Pricing

Pay per event

Go to Apify Store
Healthcare Provider Lead Scraper

Healthcare Provider Lead Scraper

Scrape dentist, doctor, clinic, and orthodontist leads from Google Maps. Returns name, address, phone, website, rating, and coordinates for each provider.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Scrape dentist, doctor, clinic, and orthodontist leads from Google Maps. Returns name, address, phone, rating, reviews count, coordinates, and category for each provider.

What it does

Given a search query (e.g. "dentist", "orthodontist", "urgent care") and a location (e.g. "New York, NY"), the actor:

  1. Opens Google Maps and searches for providers matching the query near the location
  2. Scrolls the results panel to load up to maxItems listings
  3. Extracts structured data from each result card
  4. Returns one record per provider

Google Maps is a fully client-rendered SPA — a real browser (Playwright + Chromium) with residential proxy is required to receive the hydrated search results.

Input

FieldTypeRequiredDescription
searchQuerystringYesType of provider to search for (e.g. "dentist", "orthodontist", "pediatric dentist")
locationstringYesCity and state or ZIP code (e.g. "New York, NY", "90210")
maxItemsintegerYesMaximum number of results to return (default: 10)

Example input

{
"searchQuery": "dentist",
"location": "New York, NY",
"maxItems": 20
}

Output

Each result is one dataset record:

FieldTypeDescription
place_idstringGoogle Maps internal place CID (hex format)
namestringBusiness name
addressstringStreet address (parsed from listing card)
citystringCity (not available from listing cards; enriched in future version)
statestringState (not available from listing cards; enriched in future version)
postal_codestringZIP/postal code (not available from listing cards)
countrystringCountry code (default: "US")
phonestringPhone number (when shown in listing card)
websitestringWebsite URL (not available from listing cards; planned for v0.2)
ratingnumberAverage star rating (e.g. 4.9)
reviews_countintegerTotal number of reviews
categorystringBusiness category (e.g. "Dentist", "Orthodontist")
latitudenumberLatitude from Google Maps URL
longitudenumberLongitude from Google Maps URL
maps_urlstringDirect Google Maps place URL
search_querystringThe searchQuery input that produced this result
search_locationstringThe location input that produced this result
scraped_atstringISO 8601 timestamp of when the record was scraped

Example output record

{
"place_id": "0x89c2598b826e5555:0x6d6e8f617e6f7d54",
"name": "Park Slope Dental Associates",
"address": "209 E 56th St 1st floor",
"city": "",
"state": "",
"postal_code": "",
"country": "US",
"phone": "(212) 555-0100",
"website": "",
"rating": 4.9,
"reviews_count": 312,
"category": "Dentist",
"latitude": 40.7589,
"longitude": -73.9728,
"maps_url": "https://www.google.com/maps/place/Park+Slope+Dental+Associates/...",
"search_query": "dentist",
"search_location": "New York, NY",
"scraped_at": "2026-06-05T02:30:00.000Z"
}

Notes

  • Residential proxy is required. Google Maps blocks datacenter IPs. Proxy cost is included in the actor's price.
  • Google Maps shows up to ~20 organic results per search query. For broader coverage, run multiple searches with specific neighborhoods or ZIP codes.
  • Phone and website are not consistently shown in listing cards. Phone is extracted when present; website enrichment is planned for a future version.
  • Coordinates (latitude, longitude) are extracted from the Maps place URL — no additional API calls required.
  • maxItems caps results at the Google Maps listing limit (~20). Set lower to reduce run time and cost.