HealthGrades Scraper 🩺
by shahidirfan
Extract comprehensive data on doctors, dentists, and hospitals directly from Healthgrades. This lightweight actor efficiently gathers profiles and rev...
Opens on Apify.com
About HealthGrades Scraper 🩺
Extract comprehensive data on doctors, dentists, and hospitals directly from Healthgrades. This lightweight actor efficiently gathers profiles and reviews. To ensure uninterrupted scraping and avoid blocking, the use of residential proxies is highly recommended.
What does this actor do?
HealthGrades Scraper 🩺 is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.
Key Features
- Cloud-based execution - no local setup required
- Scalable infrastructure for large-scale operations
- API access for integration with your applications
- Built-in proxy rotation and anti-blocking measures
- Scheduled runs and webhooks for automation
How to Use
- Click "Try This Actor" to open it on Apify
- Create a free Apify account if you don't have one
- Configure the input parameters as needed
- Run the actor and download your results
Documentation
Healthgrades Family Practice Scraper
Extract comprehensive family practice physician profiles from Healthgrades.com
Find qualified family practitioners across the United States with detailed profiles, ratings, and contact information
json { "location": "Texas", "results_wanted": 25 } This configuration will extract 25 family practice providers from Texas with full profile details. ### 2. Targeted Search - State and City Focus on specific geographic areas: json { "location": "Los Angeles, CA", "results_wanted": 50, "collectDetails": true } Extract 50 providers from Los Angeles with complete profile information including education, certifications, and accepted insurance. ### 3. Large-Scale Extraction - Advanced Configuration For comprehensive data collection projects: json { "location": "California", "results_wanted": 200, "max_pages": 15, "collectDetails": true, "maxConcurrency": 5, "proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] } } Collect up to 200 California family practice providers with full details, using residential proxies for enhanced reliability. ### 4. Quick Listing - No Details Required Extract basic information only: json { "location": "Florida", "results_wanted": 100, "collectDetails": false, "maxConcurrency": 8 } Quickly gather provider names, locations, and ratings without fetching detailed profile pages. --- ## Input Configuration Configure the scraper using these parameters to customize your data extraction: | Parameter | Type | Required | Description | Default | Example |
|---|---|---|---|---|---|
location | String | No | Geographic location for search (state, city, or "City, State" format). Leave empty for nationwide search. | "" | "Texas", "New York, NY" |
startUrl | String | No | Direct Healthgrades.com search URL. Overrides location parameter when provided. | null | "https://www.healthgrades.com/family-practice-directory/ca" |
results_wanted | Integer | No | Target number of provider profiles to extract (1-500). | 50 | 100 |
max_pages | Integer | No | Maximum number of search result pages to process (1-20). | 10 | 15 |
collectDetails | Boolean | No | Extract full provider profiles including education, certifications, bio, and insurance. Set to false for listing data only. | true | true |
maxConcurrency | Integer | No | Number of parallel requests (1-10). Higher values increase speed but may affect reliability. Recommended: 3-5. | 5 | 5 |
proxyConfiguration | Object | No | Apify Proxy configuration for enhanced reliability and IP rotation. Residential proxies recommended. | {"useApifyProxy": true} | See proxy configuration below |
json { "proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] } } Using residential proxies significantly improves reliability and reduces blocking likelihood during large-scale extraction. --- ## Output Data Structure Each extracted provider record contains the following fields: | Field | Type | Description | Example |
|---|---|---|---|
url | String | Direct link to provider profile on Healthgrades | "https://www.healthgrades.com/physician/dr-john-smith-xyz123" |
providerId | String | Unique provider identifier (NPI or internal ID) | "1234567890" |
name | String | Full name of the provider | "Dr. John Smith, MD" |
specialty | String | Primary medical specialty | "Family Practice" |
specialties | Array | List of all specialties (if collectDetails=true) | ["Family Practice", "Primary Care"] |
location | String | City and state of practice | "Houston, TX" |
address | Object | Complete address details (if available) | {"street": "123 Main St", "city": "Houston", "state": "TX", "zip": "77001"} |
phone | String | Primary contact phone number | "(713) 555-1234" |
fax | String | Fax number (if available) | "(713) 555-5678" |
website | String | Provider's website URL | "https://www.drjohnsmith.com" |
rating | Number | Overall provider rating (typically 1-5 scale) | 4.7 |
reviewCount | Number | Total number of patient reviews | 156 |
bio | String | Provider biography and background (if collectDetails=true) | "Dr. Smith has over 20 years of experience..." |
image | String | URL to provider profile photo | "https://img.healthgrades.com/..." |
gender | String | Provider gender (if available) | "Male" |
languages | Array | Languages spoken by provider | ["English", "Spanish"] |
education | Array | Medical schools and educational institutions | ["Harvard Medical School", "Johns Hopkins University"] |
certifications | Array | Board certifications and credentials | ["American Board of Family Medicine"] |
acceptedInsurance | Array | List of accepted insurance providers | ["Aetna", "Blue Cross", "United Healthcare"] |
yearsExperience | Number | Years of medical practice experience | 20 |
acceptingNewPatients | Boolean | Whether provider is accepting new patients | true |
Click to view complete output example
json { "url": "https://www.healthgrades.com/physician/dr-sarah-johnson-abc789", "providerId": "9876543210", "name": "Dr. Sarah Johnson, MD", "specialty": "Family Practice", "specialties": ["Family Practice", "Primary Care", "Preventive Medicine"], "location": "Austin, TX", "address": { "street": "456 Oak Avenue Suite 200", "city": "Austin", "state": "TX", "zip": "78701" }, "phone": "(512) 555-9876", "fax": "(512) 555-9877", "website": "https://www.drsarahjohnson.com", "rating": 4.9, "reviewCount": 243, "bio": "Dr. Sarah Johnson is a board-certified family practice physician with over 15 years of experience providing comprehensive healthcare services to patients of all ages. She specializes in preventive care, chronic disease management, and wellness programs.", "image": "https://img.healthgrades.com/providers/dr-sarah-johnson.jpg", "gender": "Female", "languages": ["English", "Spanish", "Portuguese"], "education": [ "University of Texas Medical School", "MD Anderson Cancer Center - Residency" ], "certifications": [ "American Board of Family Medicine", "American Board of Preventive Medicine" ], "acceptedInsurance": [ "Aetna", "Blue Cross Blue Shield", "Cigna", "Humana", "Medicare", "United Healthcare" ], "yearsExperience": 15, "acceptingNewPatients": true } - Use Residential Proxies - Significantly improves success rates for large extractions
- Set Reasonable Limits - Start with smaller result sets to test configuration
- Monitor Run Progress - Check logs for extraction statistics and any issues
- Optimize Concurrency - Lower values (3-5) provide better reliability
- Enable collectDetails - Only when comprehensive data is needed
- JSON API Priority - Attempts to extract data from internal JSON APIs for speed and reliability
- HTML Parsing - Falls back to HTML extraction using structured selectors and JSON-LD schema
- Smart Pagination - Automatically navigates multiple result pages until target count reached
- Concurrent Processing - Parallel request handling for efficient large-scale extraction
Can I extract providers from multiple states?
Yes, leave the location parameter empty for nationwide search, or run multiple extractions with different location values. You can also use state-level searches like "Texas" or "California" to get providers across entire states.What's the difference between JSON API and HTML extraction?
The scraper automatically tries JSON API first because it's faster and more reliable. If the API is unavailable or fails, it automatically falls back to HTML parsing. You don't need to configure this - it happens automatically.Why should I use collectDetails=false?
Setting collectDetails to false extracts only basic information from search listings (name, location, rating, URL) without visiting individual provider pages. This is significantly faster and useful when you only need basic provider information or want to quickly identify providers before detailed extraction.How do I choose the right maxConcurrency value?
Lower values (1-3) provide maximum reliability but slower extraction. Medium values (3-5, recommended) balance speed and reliability. Higher values (6-10) extract faster but may encounter more blocking or errors. Start with the default of 5 and adjust based on results.Do I need to use proxies?
Proxies are highly recommended, especially for extracting large numbers of providers (100+). Residential proxies provide the best results. The default configuration enables Apify Proxy automatically.What happens if the scraper times out?
The scraper has a 4.5-minute safety timeout to ensure data is saved before run limits. All successfully extracted providers are saved before the timeout. You can run the scraper again to collect additional providers.Can I extract providers by insurance acceptance?
Currently, the scraper extracts accepted insurance information when available in provider profiles (with collectDetails=true). Filtering by insurance during search is not yet supported but may be added in future versions.How accurate is the extracted data?
The scraper extracts data exactly as displayed on Healthgrades.com. Data accuracy depends on Healthgrades' database. The scraper includes validation to ensure consistent formatting and handles missing fields gracefully.- Start with specific geographic locations to validate configuration
- Use collectDetails=false for initial provider discovery
- Enable residential proxies for runs exceeding 100 providers
- Monitor extraction statistics in run logs
- Adjust maxConcurrency based on success rates
- Extracted data is publicly available on Healthgrades.com
- Ensure compliance with applicable data protection regulations
- Respect website terms of service and robots.txt directives
- Use extracted data responsibly and ethically
- Provider information may be subject to HIPAA and healthcare regulations
- Verify data accuracy before use in critical applications
Version: 1.0.0
Last Updated: December 2025
Maintained by: Professional development team
Platform: Apify
Start extracting Healthgrades family practice data today!
Reliable • Fast • Comprehensive • Easy to use
Categories
Common Use Cases
Market Research
Gather competitive intelligence and market data
Lead Generation
Extract contact information for sales outreach
Price Monitoring
Track competitor pricing and product changes
Content Aggregation
Collect and organize content from multiple sources
Ready to Get Started?
Try HealthGrades Scraper 🩺 now on Apify. Free tier available with no credit card required.
Start Free TrialActor Information
- Developer
- shahidirfan
- Pricing
- Paid
- Total Runs
- 10
- Active Users
- 2
Related Actors
Web Scraper
by apify
Cheerio Scraper
by apify
Website Content Crawler
by apify
Legacy PhantomJS Crawler
by apify
Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.
Learn more about ApifyNeed Professional Help?
Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.
Trusted by millions | Money-back guarantee | 24/7 Support