Doctoralia Es Scraper avatar

Doctoralia Es Scraper

Pricing

from $1.47 / 1,000 results

Go to Apify Store
Doctoralia Es Scraper

Doctoralia Es Scraper

Scrape doctor profiles from Doctoralia.es: name, specialty, rating, address, services, and coordinates.

Pricing

from $1.47 / 1,000 results

Rating

0.0

(0)

Developer

Unfenced Group

Unfenced Group

Maintained by Community

Actor stats

1

Bookmarked

1

Total users

0

Monthly active users

7 days ago

Last modified

Share

Doctoralia Es Scraper

Scrape doctor and specialist profiles from Doctoralia.es — Spain's leading medical directory. Extracts names, specialties, ratings, locations, services, and contact details.

What it scrapes

Search by keyword, specialty, or location, or point it at specific profile or search URLs. Each run returns structured doctor profile data ready for analysis, lead generation, or healthcare market research.

Output fields

Always present

FieldTypeDescription
namestringFull name including title (e.g. "Dr. Raimundo Gutiérrez Fonseca")
entityTypestringdoctor for an individual practitioner, facility for a clinic or medical centre
profileUrlstringFull URL of the Doctoralia profile
specializationsstringPrimary medical specialty or specialties
subspecializationsstringSub-specialties listed in parentheses (null if none)
citystringCity of practice, from the published address
clinicNamestringName of the practice or centre at the primary address
streetAddressstringStreet address of the primary practice
addressCitystringCity of the primary practice
addressRegionstringProvince or autonomous community
addressCountrystringISO country code (always "ES")
addressCountintegerHow many practice addresses the listing holds (only the first is returned)
latitudenumberLatitude of the primary practice
longitudenumberLongitude of the primary practice
servicesarrayBookable services with their listed price, e.g. [{ "name": "Visita Cardiología", "price": "150 €" }]
isOnlineOnlybooleanWhether the practitioner offers online consultations only
ratingScorenumberAverage rating out of 5 (null if no reviews)
reviewCountintegerTotal number of patient reviews
scrapedAtstringISO 8601 timestamp of when the profile was scraped
sourceUrlstringThe search/listing URL this profile was found on

With fetchDetails: true

FieldTypeDescription
licenseNumberstringSpanish medical licence number (Número de Colegiado)
ratingValuenumberRating as published on the profile page
answeredQuestionsintegerNumber of patient questions the practitioner has answered

Addresses, coordinates, practice names and priced services come from the listing itself, so they are returned on every run at no extra cost. fetchDetails only adds the three fields above.

Sample output record

{
"name": "Dr. Agustin Miguel Claveria Martinez",
"entityType": "doctor",
"profileUrl": "https://www.doctoralia.es/agustin-miguel-claveria-martinez/psiquiatra/calella",
"specializations": "Psiquiatra",
"subspecializations": "Psicoterapia, Neuropsiquiatría, Psiquiatria del adulto, Patología dual",
"city": "Calella",
"clinicName": "AtmanPsi (online)",
"streetAddress": "Carrer de l'Església 299",
"addressCity": "Calella",
"addressRegion": "Barcelona",
"addressCountry": "ES",
"addressCount": 1,
"latitude": 41.6165848,
"longitude": 2.667213,
"services": [{ "name": "Asesoramiento psicoterapéutico", "price": "80 €" }],
"isOnlineOnly": false,
"ratingScore": 5,
"reviewCount": 11,
"scrapedAt": "2026-09-10T08:16:25.255Z",
"sourceUrl": "https://www.doctoralia.es/buscar?q=psiquiatra"
}

Why this scraper?

🎯 Purpose-built

A dedicated scraper for this healthcare directory, tuned to its specialties and location structure.

🩺 Professional profiles only

Publicly listed practitioner and clinic data — names, specialties, locations and profile details. No patient data is ever collected.

📦 Clean, consistent records

Every record follows the same structure, ready for export to JSON, CSV or Excel.


Input parameters

ParameterTypeDescription
searchQuerystringDoctor name, specialty, or keyword to search for
locationstringCity or area to filter by, e.g. Madrid, Barcelona
specialtystringMedical specialty filter, e.g. dermatólogo, cardiólogo
maxResultsintegerMaximum number of profiles to return. Default 20
includeFacilitiesbooleanKeep clinics and medical centres alongside individual doctors. Default false
fetchDetailsbooleanOpen each profile page for licence number, address, coordinates, services and insurers. Default false
startUrlsarrayDirect Doctoralia.es profile or search URLs. Overrides all filters

Examples

Search for cardiologists in Madrid:

{
"searchQuery": "cardiólogo",
"location": "Madrid",
"maxResults": 50,
"fetchDetails": true
}

Get all psychiatrists in Barcelona with detail pages:

{
"searchQuery": "psiquiatra",
"location": "Barcelona",
"maxResults": 200,
"fetchDetails": true
}

Scrape specific profile URLs directly:

{
"startUrls": [
{ "url": "https://www.doctoralia.es/raimundo-gutierrez-fonseca/otorrino-otorrino-infantil/madrid" },
{ "url": "https://www.doctoralia.es/buscar?q=pediatra&loc=Sevilla" }
],
"fetchDetails": true
}

Clinics and medical centres in Madrid:

{
"searchQuery": "medico",
"location": "Madrid",
"maxResults": 50,
"includeFacilities": true,
"fetchDetails": false
}

Generic Spanish terms such as medico return clinics and centres rather than individual doctors. Without includeFacilities, those results are filtered out and the run returns few or no rows.

Pricing

$1.50 per 1,000 profiles with fetchDetails: false. With fetchDetails: true, each profile requires an additional page request, so cost scales with the number of profiles fetched.

Use the Max results cap to control your spend exactly.

Performance

RunMeasured
10 results, listing only~6 seconds
100 results, listing only~42 seconds
10 results, fetchDetails: true~9 seconds

Peak memory stays well under 256 MB; the run is network-bound, not memory-bound.


Known limitations

  • Profile depth varies per practitioner; the scraper returns what the source publishes and never invents data.
  • No patient data is ever collected — only publicly listed professional profiles.
  • Very large result sets are bounded by the source's own paging limits.
  • Doctoralia mixes individual doctors and clinics in one result list. Which of the two a query returns is decided by the site, not by this actor — use includeFacilities to keep both.
  • A search that genuinely matches nothing finishes successfully with an empty dataset rather than failing.
  • A listing can hold several practice addresses. The first is returned; addressCount reports how many there were.
  • Doctoralia does not publish accepted insurers or payment methods on profile pages, so those are not returned.

Technical details

  • Source: doctoralia.es — Spain's largest doctor directory (DocPlanner Group)
  • Memory: 512 MB
  • Retry: Automatic retry on network errors, up to 3 attempts per request
  • Rate limiting: 800ms delay between pages, 400ms between detail requests

Additional services

Need a custom actor, additional filters, scheduled runs, or integration support? Email info@unfencedgroup.nl — we build on request.

Other scrapers in our Healthcare Booking collection:


Run it on a schedule

This actor is built for repeat use. Set it to run daily, weekly, or hourly, and the data keeps flowing without you touching it.

  • Schedule runs — open the actor, go to Schedules, and pick a cadence. Each run only charges you for the results it returns.
  • Connect it to your stack — push results straight to Google Sheets, Slack, a webhook, or your database using Apify Integrations. No glue code needed.
  • Pull results via API — every run writes a clean dataset you can fetch with one API call, ready for whatever you build on top of it.

Set it once and it runs on its own.


Rate this actor

If this scraper does its job, a short review on the Reviews tab helps other users find it. Something not working? Open an issue on the Issues tab instead — issues get fixed.


Need a custom scraper?

Unfenced Group builds Apify actors for any website — for free.

If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.

Get in touch: www.unfencedgroup.nl