Oladoc Doctors Scraper 🩺 avatar

Oladoc Doctors Scraper 🩺

Pricing

Pay per usage

Go to Apify Store
Oladoc Doctors Scraper 🩺

Oladoc Doctors Scraper 🩺

Efficiently extract doctor profiles, specialties, and consultation fees from Oladoc. This lightweight scraper is built for speed and ease of use. For optimal performance and to ensure uninterrupted data collection, the use of residential proxies is strongly recommended.

Pricing

Pay per usage

Rating

5.0

(2)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

1

Bookmarked

16

Total users

2

Monthly active users

2 days ago

Last modified

Share

What does Oladoc Doctors Scraper do?

Oladoc Doctors Scraper collects structured doctor directory data from Oladoc, Pakistan's healthcare platform. Search by specialty and city, or provide a public Oladoc listing URL, then export doctor profiles with qualifications, experience, ratings, consultation fees, availability, locations, services, and hospital information.

The Actor is useful for healthcare market research, doctor and clinic directory projects, provider discovery, appointment marketplace analysis, competitive research, and data enrichment. Each run saves unique doctor records to an Apify Dataset and removes empty values from the final output.

Why use Oladoc Doctors Scraper?

  • Build doctor datasets - Collect consistent provider records for dashboards, directories, research, and internal databases.
  • Search Pakistani healthcare markets - Focus on a specialty and city such as dermatology in Lahore or cardiology in Karachi.
  • Compare provider information - Analyze qualifications, experience, ratings, review counts, fees, services, and availability.
  • Understand appointment coverage - Identify hospitals, clinics, video consultation locations, booking availability, opening hours, and available days.
  • Create cleaner downstream data - Duplicate doctor profiles are skipped by doctor ID, and empty strings, null values, and empty nested objects are omitted.
  • Run repeatable workflows - Use Apify datasets, schedules, webhooks, API access, and exports for recurring research or monitoring.

What data can you extract from Oladoc?

The Actor returns one JSON object for each unique doctor profile. Fields are included when Oladoc publishes them for that record.

FieldTypeDescription
doctor_idStringUnique doctor identifier from Oladoc.
nameStringDoctor display name.
urlStringPublic Oladoc doctor profile URL.
genderStringGender value when published.
specialtyStringSpecialties associated with the doctor.
primary_specialtyStringPrimary specialty name.
specialty_slugStringPrimary specialty slug used by the listing.
specialty_slugsArrayNormalized list of specialty slugs.
qualificationsStringDegrees and other educational credentials.
profile_imageStringDoctor profile image URL when available.
experienceStringHuman-readable experience, such as 8 Years.
experience_yearsIntegerNumeric years of experience when available.
ratingNumberAverage rating score.
reviews_countIntegerTotal review count.
consultation_feeStringFee range or formatted consultation fee.
maximum_feeIntegerMaximum fee value when available.
wait_timeStringAverage wait time or wait-time range.
availabilityStringCurrent availability text when published.
cityStringDoctor city.
localityStringPractice locality when available.
locationsArray or ObjectAdditional location information when available.
opening_hoursString or ArrayPublished opening hours.
phoneStringAppointment contact number when published.
descriptionStringPublic profile summary or about text.
pmdc_verifiedBooleanWhether the profile is marked as PMDC verified.
pmdc_idStringPMDC identifier when published.
governing_bodyStringGoverning medical body when published.
is_bookableBooleanWhether booking is indicated for the profile.
is_partnerBooleanWhether the doctor is marked as a platform partner.
has_active_subscriptionBooleanWhether an active subscription is indicated.
video_consultation_availableBooleanWhether video consultation is available.
recommendation_percentageIntegerRecommendation percentage when available.
feedback_percentageIntegerFeedback percentage when available.
total_usersIntegerUser count associated with the profile when available.
featured_reviewString or ObjectFeatured review information when published.
available_daysArrayDays on which availability is listed.
servicesObjectService count, service names, and related service metadata.
hospitalsArrayHospital and clinic locations from the doctor profile.
bookable_hospitalsArrayLocations where appointment booking is indicated.
vc_hospitalsArrayVideo consultation locations.
subscribed_hospitalsArraySubscribed practice locations when available.
all_hospitalsArrayCombined, deduplicated hospital and consultation locations.

Hospital entries can include names, addresses, cities, localities, fees, phone numbers, coordinates, availability, booking URLs, consultation mode, and insurance or discount indicators when published.

How to use Oladoc Doctors Scraper

  1. Open Oladoc Doctors Scraper in Apify Console.
  2. Enter both specialty and city, or provide a public startUrl for an Oladoc listing.
  3. Set results_wanted and max_pages for the size of the collection.
  4. Keep collectDetails enabled when hospital and service information is needed.
  5. Add optional proxy settings for longer or recurring runs.
  6. Start the run and review the Dataset preview.
  7. Download the results or connect the Dataset to your application or automation workflow.

When startUrl is provided, it takes precedence over specialty, city, and country for building the listing source. Without startUrl, both specialty and city are needed. The default country is pakistan.

Input Parameters

ParameterTypeRequiredDefaultDescription
startUrlStringConditional-Public Oladoc listing URL. When provided, it takes precedence over specialty, city, and country.
specialtyStringConditional-Specialty slug, such as dermatologist or cardiologist. Required with city when startUrl is not provided.
cityStringConditional-City slug, such as lahore, karachi, or islamabad. Required with specialty when startUrl is not provided.
countryStringNopakistanCountry slug used with city and specialty to build the listing URL.
collectDetailsBooleanNotrueInclude hospital, bookable hospital, video consultation, subscribed hospital, and combined hospital arrays.
results_wantedIntegerNo20Maximum number of unique doctor records to save.
max_pagesIntegerNo10Maximum number of listing pages to process.
proxyConfigurationObjectNo{ "useApifyProxy": false }Optional Apify Proxy settings for longer or recurring runs.

Output Data

The Dataset contains one item per unique doctor ID. Base profile fields remain available when collectDetails is false, while the hospital arrays are omitted. Optional source values are omitted instead of being returned as empty fields.

Hospital and service objects are also cleaned of empty values and duplicate entries. The exact number of fields can vary between doctors because Oladoc does not publish the same information for every profile.

Usage Examples

Collect up to 20 dermatologists listed in Lahore.

{
"specialty": "dermatologist",
"city": "lahore",
"results_wanted": 20
}

Direct Oladoc listing URL

Use a public listing URL when you already know the specialty and location page to collect.

{
"startUrl": "https://oladoc.com/pakistan/lahore/dermatologist",
"results_wanted": 30,
"max_pages": 5
}

Detailed collection with proxy settings

Collect cardiologists in Karachi and include detailed hospital data for a larger run.

{
"specialty": "cardiologist",
"city": "karachi",
"collectDetails": true,
"results_wanted": 50,
"max_pages": 10,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Sample Output

This example shows a single dataset item with profile, service, booking, and hospital information. Actual fields vary according to the source profile.

{
"doctor_id": "1601408",
"name": "Dr. Alina Abbas",
"url": "https://oladoc.com/pakistan/lahore/dr/dermatologist/alina-abbas/1601408",
"specialty": "Dermatologist, Cosmetologist",
"qualifications": "M.B.B.S., F.C.P.S.",
"experience": "8 Years",
"experience_years": 8,
"rating": 4.9,
"reviews_count": 1238,
"consultation_fee": "1500 - 2500",
"wait_time": "15 - 30 Min",
"availability": "today",
"city": "Lahore",
"locality": "Johar Town",
"phone": "04238900939",
"description": "Dr. Alina Abbas is one of the best Dermatologist in Lahore.",
"pmdc_verified": true,
"services": {
"count": 39,
"items": [
"Acne Treatment",
"Alopecia",
"Antihistamine Treatment",
"Boil",
"Carbon Facial"
],
"user_id": "1601408"
},
"all_hospitals": [
{
"doctor_id": "1601408",
"hospital_id": "4681",
"name": "Online Video Consultation",
"locality": "Online",
"city": "Video Consultation",
"fee": 1500,
"when_available": "Tue, Apr 14",
"video_consultation": true,
"book": true
},
{
"doctor_id": "1601408",
"hospital_id": "117",
"name": "Ihsan Mumtaz Hospital",
"locality": "Johar Town",
"city": "Lahore",
"fee": 2500,
"when_available": "today",
"video_consultation": false,
"book": true
}
]
}

Tips for Best Results

  • Use Oladoc specialty and city slugs that match the public listing URL format.
  • Start with results_wanted set to 20 to confirm the fields and geographic scope.
  • Increase max_pages when the selected specialty and city contain more results.
  • Use startUrl when you already have a specific public listing page.
  • Keep collectDetails enabled for hospital, booking, service, and video consultation data.
  • Set collectDetails to false when you only need lighter base doctor records. Hospital arrays are then omitted, but profile fields such as name, specialty, rating, fee, and URL remain available.
  • Use proxy settings for longer collections or recurring schedules when additional connection reliability is needed.
  • Treat missing phone numbers, fees, ratings, and hospital details as normal source-data variation. These values are included only when published.
  • Review a small Dataset preview before scheduling larger runs.

Integrations

  • JSON - Use structured records in applications, scripts, and data pipelines.
  • CSV - Analyze doctor coverage, specialties, fees, and locations in spreadsheet tools.
  • Excel - Prepare reports and share provider research with business teams.
  • XML - Support workflows that require XML-based data exchange.
  • Google Sheets and Airtable - Build searchable doctor and clinic directories.
  • Make and Zapier - Send completed datasets into CRM, notification, or enrichment workflows.
  • Webhooks - Notify downstream systems when a run finishes.
  • Apify API - Retrieve Dataset records programmatically.
  • Scheduling - Refresh public Oladoc directory data on an hourly, daily, weekly, or custom schedule.

Frequently Asked Questions

Can I search Oladoc by specialty and city?

Yes. Provide both specialty and city to create a location-focused Oladoc listing search. country defaults to pakistan.

Can I provide my own Oladoc URL?

Yes. Set startUrl to a public Oladoc listing URL. It takes precedence over specialty, city, and country when the collection source is built.

Does collectDetails: false remove doctor profile fields?

No. It only omits the hospital arrays. Base profile fields such as name, specialty, qualifications, rating, fees, availability, city, and URL remain available when published.

How are duplicate doctors handled?

Duplicate records are skipped using the doctor ID before they are saved to the Dataset. Empty strings, null values, empty objects, and repeated nested values are also removed.

Can I export Oladoc data to CSV or Excel?

Yes. Apify Dataset results can be downloaded as CSV, Excel, JSON, XML, and other supported formats.

Can I schedule recurring Oladoc collections?

Yes. Create an Apify schedule to refresh provider profiles, fees, ratings, availability, and hospital information at a chosen interval.

Why is a phone number or hospital missing?

Oladoc does not publish every field for every doctor. The Actor keeps available public values and omits unavailable or empty values, so records can have different field coverage.

Is Oladoc Doctors Scraper suitable for medical decisions?

No. The output is directory information for research and data workflows, not medical advice, diagnosis, provider quality certification, or a substitute for professional healthcare guidance.

Public data collection may be subject to Oladoc's terms, privacy requirements, healthcare data rules, and other applicable laws. You are responsible for confirming that your collection, storage, analysis, and use of the data are lawful.

  • Practo Doctors Scraper - Collect doctor and clinic data from Practo, including specialties, fees, ratings, availability, and practice details.
  • Marham.pk Scraper - Collect Pakistani doctor profiles, consultation fees, reviews, hospitals, services, and availability indicators from Marham.pk.
  • HealthGrades Scraper - Collect healthcare provider profiles, specialties, ratings, review counts, locations, and contact details from Healthgrades.

Support

For issues, feature requests, or reports that Oladoc fields have changed, use the Issues tab on the Actor page. Include the input used, run ID, and a short description of the affected fields when possible.

This Actor is intended for legitimate collection and analysis of publicly available Oladoc directory information. Users are responsible for complying with Oladoc's terms, applicable privacy and healthcare data requirements, and all other laws relevant to their use case. Do not use the output for unlawful outreach, discriminatory decisions, or clinical decisions without appropriate independent verification.