Practo Doctor Scraper avatar

Practo Doctor Scraper

Pricing

from $4.00 / 1,000 results

Go to Apify Store
Practo Doctor Scraper

Practo Doctor Scraper

Get verified doctor profiles, consultation fees, ratings and clinic addresses from Practo.com — India's largest health platform. Covers 20+ cities and 50+ specialties. Structured JSON, ready for Claude, ChatGPT and any AI agent.

Pricing

from $4.00 / 1,000 results

Rating

0.0

(0)

Developer

Archit Khurana

Archit Khurana

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

2

Monthly active users

a day ago

Last modified

Share

India Doctor & Clinic Scraper — Fees, Ratings & Verified Profiles

The only structured data source you need for Indian doctors. Ask Claude or ChatGPT "find me the top-rated cardiologists in Mumbai with consultation fees under ₹800" — this is the actor that makes that question answerable.

Pulls live data from Practo.com, India's largest healthcare platform with 100,000+ verified doctor profiles across every major city and specialty. Returns clean JSON ready for AI pipelines, CRMs, spreadsheets or dashboards.


What you get

Every doctor record includes:

FieldExample
doctorNameDr. Priya Sharma
specialtyDermatologist
experienceYears14
qualificationsMBBS, MD - Dermatology
consultationFee800 (INR)
clinicNameSkin & Smile Clinic
clinicAddress42, MG Road, Indiranagar, Bangalore
localityIndiranagar
cityBangalore
reviewCount312
isVerifiedtrue
onlineConsultationAvailabletrue
profileUrlhttps://www.practo.com/bangalore/doctor/...

Why this beats every alternative

vs Google Maps — Maps shows clinics, not doctors. No fees, no qualifications, no specialty-level search. This actor returns the actual doctor behind the clinic with their credentials and pricing.

vs manual research — Practo has 100,000+ profiles. Manually collecting 50 doctors with fees, ratings and addresses would take days. This does it in minutes.

vs other scrapers — Built specifically for Practo's React/Redux architecture. Extracts data from the server-rendered state blob, not brittle HTML selectors that break every week.


Example input

{
"city": "Bangalore",
"specialty": "dermatologist",
"maxResults": 100,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Works for any combination of:

Cities — Delhi, Mumbai, Bangalore, Hyderabad, Chennai, Pune, Kolkata, Ahmedabad, Jaipur, Chandigarh, Kochi, Lucknow, Nagpur, Indore, Surat, Visakhapatnam, Coimbatore and 10+ more.

Specialties — dentist, cardiologist, dermatologist, gynecologist, orthopedic-surgeon, pediatrician, general-physician, psychiatrist, neurologist, gastroenterologist, ophthalmologist, ent-specialist, urologist, oncologist, endocrinologist and 35+ more.


Example output

[
{
"doctorName": "Dr. Sourabh Nagpal",
"specialty": "Dentist",
"experienceYears": 21,
"qualifications": "BDS, MDS - Prosthodontist And Crown Bridge",
"consultationFee": 500,
"clinicName": "Matrix Dental & Skin Lounge",
"clinicAddress": "14, Ground Floor, Poorvi Marg, Vasant Vihar, Delhi",
"locality": "Vasant Vihar",
"city": "Delhi",
"rating": null,
"reviewCount": 1701,
"isVerified": true,
"onlineConsultationAvailable": true,
"profileUrl": "https://www.practo.com/delhi/doctor/dr-sourabh-nagpal-dentist",
"phone": null
}
]

Use with AI agents

Ask Claude (via Anthropic API)

import anthropic
import apify_client
# 1. Scrape the data
client = apify_client.ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("fervent_bus/india-doctor-scraper").call(run_input={
"city": "Mumbai",
"specialty": "cardiologist",
"maxResults": 50
})
doctors = list(client.dataset(run["defaultDatasetId"]).iterate_items())
# 2. Ask Claude anything about it
anthropic_client = anthropic.Anthropic()
message = anthropic_client.messages.create(
model="claude-sonnet-5",
max_tokens=1024,
messages=[{
"role": "user",
"content": f"Which 5 cardiologists in Mumbai have the best reviews and offer online consultation? Data: {doctors}"
}]
)
print(message.content[0].text)

Ask ChatGPT

import openai, json
openai_client = openai.OpenAI()
response = openai_client.chat.completions.create(
model="gpt-4o",
messages=[{
"role": "user",
"content": f"Summarise the dermatologist market in Bangalore — average fees, top-rated doctors, most common qualifications. Data: {json.dumps(doctors)}"
}]
)
print(response.choices[0].message.content)

MCP tool definition (for any agent framework)

{
"name": "find_doctors_india",
"description": "Find doctors and clinics in any Indian city by specialty. Returns fees, ratings, qualifications and addresses.",
"parameters": {
"city": { "type": "string", "description": "Indian city e.g. Delhi, Mumbai, Bangalore" },
"specialty": { "type": "string", "description": "Medical specialty e.g. cardiologist, dentist, dermatologist" },
"maxResults": { "type": "integer", "default": 20 }
}
}

Real use cases

Healthcare sales & lead gen — Pharma reps, medical device companies and health-tech startups use this to build targeted lists of specialist doctors with clinic addresses for outreach.

Insurance network mapping — Build and verify provider directories. Cross-check which doctors and clinics are active in a city before adding them to a network.

Market research — Compare consultation fee ranges, doctor density and review volumes across cities. Essential for any healthtech product deciding where to launch.

Clinic aggregator / booking platform — Seed your own platform with real clinic and doctor data rather than building a directory from scratch.

AI health assistants — Let users ask natural-language questions like "Who is the best gynecologist in South Delhi with online consult under ₹500?" and power the answer with real data.

Academic research — Study healthcare access, fee distribution and specialist availability across Indian cities and tiers.


Pricing

$0.004 per result — 1,000 doctor records for $4.


Notes

  • Requires Apify Residential Proxies — enable in the proxyConfiguration input (pre-filled). Practo blocks datacenter IPs.
  • Specialty must match Practo's URL slugs: lowercase, hyphenated e.g. general-physician, orthopedic-surgeon.
  • phone and rating are null in listing results — Practo doesn't expose phone numbers publicly and star ratings only appear on individual profile pages.
  • Adds a 2–4s random delay between pages.

Built with Apify · Camoufox · Source on GitHub