Practo Doctor Scraper
Pricing
from $5.00 / 1,000 doctor scrapeds
Practo Doctor Scraper
Scrape Practo.com doctors by specialty + city or URL — name, qualifications, experience, fee, recommendation %, reviews, clinic address, services & geo. HTTP-only, no login. MCP-ready.
Pricing
from $5.00 / 1,000 doctor scrapeds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
4 days ago
Last modified
Categories
Share
Scrape doctor data from Practo.com — India's largest doctor-discovery and appointment platform — by specialty + city or by pasting listing / profile URLs. Returns clean, structured records: name, qualifications (degree + college + year), years of experience, consultation fee, recommendation %, review counts, clinic name + full address, geo-coordinates, services, and more. Optional one-click profile deep-enrich adds the full bio, every service, medical-council registrations, memberships, languages, awards, and work history.
HTTP-only (no headless browser), fast, and MCP-ready for AI agents.
What you get
| Field | Example | Notes |
|---|---|---|
doctorName | Dr. Shireen Furtado | |
specialization | Dermatologist | primary specialty |
specialties | ["Dermatologist","Cosmetologist"] | all tagged specialties |
experienceYears | 21 | |
qualifications | [{degree:"MBBS", college:"KIMS", year:2006}] | degree + college + year |
consultationFee | 1200 | in feeCurrency (INR) |
recommendationPercent | 93 | patient recommendation % |
patientsCount / reviewsCount | 157 / 157 | |
clinicName / clinicType | Aster CMI Hospital | |
addressLine / locality / city / zipcode | Hebbal, Bangalore | |
latitude / longitude | 13.05, 77.59 | map-ready geo |
popularServices / servicesCount | 18 | |
isPractoPrime | false | |
nextAvailable | 2026-07-01T04:30:00Z | next slot (ISO 8601) |
imageUrl / profileUrl | https://… | |
summary | short bio snippet |
Deep-enrich fields (when enrichDetails is on): about, specialistYears, registrationVerified, allServices (up to 80), procedures, registrations (number + council + year), memberships, languages, awards, experiences.
When to use it
- Healthcare lead generation — build targeted doctor/clinic lists by city and specialty.
- Medical recruiting — source specialists with verified qualifications and experience.
- Pharma & medical-device outreach — segment doctors by specialty, location, and patient volume.
- Market & competitive research — fee benchmarks, clinic density, specialty coverage by city.
- Directory / aggregator products — seed a doctor directory with structured, geo-tagged records.
Do not use this for patient personal data, booking automation, or any private/login-gated content — this actor only reads public doctor listing and profile pages.
Pricing
Pay-per-event (you also pay standard Apify platform usage):
| Event | Price |
|---|---|
| Actor start | $0.00005 |
| Doctor scraped | $0.005 per doctor record |
| Profile deep-enrich | $0.003 per doctor (only when enrichDetails is on) |
A typical 50-doctor run costs about $0.25 (listing only), or $0.65 with deep-enrich. The actor prints an upfront cost cap in the log and never charges past your maxItems.
Input
| Field | Type | Description |
|---|---|---|
specialty | string | e.g. Dermatologist, Dentist, Gynecologist. Used with city. |
city | string | e.g. Bangalore, Delhi, Mumbai. Used with specialty. |
startUrls | array | Practo listing or /doctor/ profile URLs. Takes priority over specialty+city. |
maxItems | integer | Max doctors to return (default 50). Auto-paginates. |
enrichDetails | boolean | Visit each profile for the full bio/services/registrations (default false). |
proxyConfiguration | object | Defaults to Apify RESIDENTIAL, country IN (required — see below). |
Example input — search
{"specialty": "Dermatologist","city": "Bangalore","maxItems": 50}
Example input — URLs + deep-enrich
{"startUrls": ["https://www.practo.com/delhi/dentist","https://www.practo.com/bangalore/doctor/dr-shireen-furtado"],"maxItems": 100,"enrichDetails": true}
Run via API
curl -X POST "https://api.apify.com/v2/acts/khadinakbar~practo-doctor-scraper/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"specialty":"Cardiologist","city":"Mumbai","maxItems":50}'
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('khadinakbar/practo-doctor-scraper').call({specialty: 'Pediatrician',city: 'Hyderabad',maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
MCP / AI agents
Exposed in the Apify MCP server as apify--practo-doctor-scraper. Give an agent a specialty + city (or a Practo URL) and it returns structured doctor JSON — ideal for healthcare research and lead-gen agents. Add ?tools=khadinakbar/practo-doctor-scraper to your MCP client URL.
Why this scraper
- HTTP-only — no headless browser, so it's faster and cheaper than browser-automation alternatives.
- Richer data — qualifications with college + year, recommendation %, geo-coordinates, and a deep-enrich mode that returns council registrations, memberships, awards, and full work history.
- Two input modes — keyword search or direct URLs.
- Honest behavior — soft-fails on bad input, paginates automatically, respects your
maxItemscap, and reports an upfront cost estimate.
Notes & reliability
Practo serves a challenge wall to datacenter IPs, so the actor uses Apify Residential proxies pinned to India (IN) by default. Keep this setting unless you have a proxy pool you know clears Practo. Practo occasionally A/B-tests its page markup; the actor extracts from the page's embedded application state with a structured-data (JSON-LD) fallback for resilience.
FAQ
Which cities and specialties are supported? Any city/specialty combination that exists on Practo (most Indian metros and tier-2 cities; dozens of specialties). If a combination has no doctors, the run finishes cleanly with an empty dataset.
How many doctors can I get per search? As many as Practo lists for that specialty + city, paginated automatically up to your maxItems.
Do I need login or cookies? No. Only public pages are read.
Can I get email/phone? Practo does not expose doctor emails/phones publicly, so those are not returned. You get clinic name, full address, geo, fee, and profile URL.
Is enrichDetails worth it? Use it when you need the full bio, complete service list, council registration numbers, memberships, languages, and awards. Skip it for fast, cheap listing-only pulls.
Legal & compliance
This actor collects only publicly available information from Practo.com. It does not bypass logins or access private data. You are responsible for using the scraped data in compliance with Practo's Terms of Service, applicable data-protection laws (including India's DPDP Act and the GDPR where relevant), and any professional/medical data regulations in your jurisdiction. Do not use this data for spam, harassment, or unlawful purposes. This actor is not affiliated with or endorsed by Practo.