# Doctoralia Clinics & Medical Centers Scraper (`scrapers_lat/doctoralia-clinics-scraper`) Actor

Extract clinics, hospitals and medical centers from Doctoralia across Latin America and Spain. For each center get its name, full address, city, phone, specialties, affiliated doctors, opening hours, services and patient rating. Built for healthcare lead generation and provider-network research.

- **URL**: https://apify.com/scrapers\_lat/doctoralia-clinics-scraper.md
- **Developed by:** [Scrapers Lat](https://apify.com/scrapers_lat) (community)
- **Categories:** Business, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $8.00 / 1,000 clinics

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

[![Doctoralia Doctor Profiles & Reviews Scraper](https://scrapers.lat/banners/doctoralia-scraper.png)](https://console.apify.com/actors/aN6uLHIedd455Drjc/input)

## Doctoralia Clinics & Medical Centers Scraper

> Extract clinics, hospitals and medical centers from Doctoralia across Latin America and Spain. Get each center's name, address, phone, specialties, affiliated doctors, opening hours and patient ratings for healthcare lead generation and provider-network research.

**📥 [Input](https://apify.com/scrapers_lat/doctoralia-scraper/input-schema) · 📤 [Output](https://apify.com/scrapers_lat/doctoralia-scraper/output-schema) · 💰 [Pricing](https://apify.com/scrapers_lat/doctoralia-scraper/pricing) · ▶️ [Examples](https://apify.com/scrapers_lat/doctoralia-scraper/examples)**

![Apify](https://img.shields.io/badge/Platform-Apify-1CE1CE?logo=apify\&logoColor=white)
![LATAM](https://img.shields.io/badge/Coverage-LATAM-blue)
![Maintained](https://img.shields.io/badge/Maintained-Yes-brightgreen)
![Output](https://img.shields.io/badge/Output-JSON%20%7C%20CSV%20%7C%20Excel-orange)

<table><tr>
<td align="center"><strong>20 fields</strong><br>per record</td>
<td align="center"><strong>LATAM</strong><br>coverage</td>
<td align="center"><strong>JSON / CSV / Excel</strong><br>output formats</td>
</tr></table>

<br>

### Who is it for

| Use case | Who benefits |
|---|---|
| Lead generation | Medtech and pharma sales teams targeting practitioners |
| Provider networks | Insurers building and validating doctor directories |
| Market research | Analysts mapping specialist supply by city and specialty |
| Recruitment | Clinics and hospitals sourcing specialists to hire |
| Data pipelines | Developers enriching healthcare CRMs and BI tools |

### Frequently Asked Questions

**Which Doctoralia country sites does it support?**\
Pick a country from the Country dropdown: Mexico, Spain, Brazil, Argentina, Colombia, Chile or Peru. The actor searches that country's Doctoralia site automatically. Advanced users can still paste a full search URL and the country is read from the domain.

**How many doctors can I collect per run?**\
Each search page returns about 20 doctors and the scraper follows pagination automatically until it reaches your Max Items value or the results run out. Runs started from a free Apify account are capped at 10 doctors per run; paid accounts have no cap.

**How do I choose what to scrape?**\
Just type a Specialty (for example Dermatólogo, Ginecólogo, Dentista or Psicólogo), optionally a City to narrow it down, and pick the Country. That is all the actor needs. Leaving the City empty searches the whole country. If you prefer, paste a full Doctoralia search URL in the advanced Search URL field to override the fields.

**What extra data do I get with detail pages enabled?**\
Turning on withDetails fetches each doctor's profile to add phone, bio, education, languages, clinic locations, full service prices, accepted insurances, the professional licence number (cédula) and the full text of patient reviews with author, star rating and date. It is slower but returns a far richer record per doctor.

**What happens when a doctor has no rating or accepts no insurance?**\
The actor returns those fields empty instead of failing. Private only doctors return an empty insurances list, and profiles without availability simply omit that data while every other field is still collected.

### Example use cases

Ready-to-run example tasks, each preconfigured for a common scenario. Open one and press run, or use it as a template:

- [Cardiologist Leads in Cancun](https://apify.com/scrapers_lat/doctoralia-scraper/examples/cardiologist-leads-cancun): Scrape cardiologist leads in Cancun from Doctoralia. Export names, phone numbers, clinics, reviews and pricing into a ready-to-use dataset.
- [General Practitioner Leads in Toluca](https://apify.com/scrapers_lat/doctoralia-scraper/examples/general-practitioner-leads-toluca): Scrape general practitioner leads in Toluca from Doctoralia. Names, phones, clinics, reviews and services exported to a structured dataset.
- [Gynecologist Leads in Tijuana](https://apify.com/scrapers_lat/doctoralia-scraper/examples/gynecologist-leads-tijuana): Extract gynecologist contact leads in Tijuana from Doctoralia. Names, phones, clinics, reviews and services exported to a clean dataset.
- [Nutritionist Leads in Merida](https://apify.com/scrapers_lat/doctoralia-scraper/examples/nutritionist-leads-merida): Collect nutritionist leads in Merida from Doctoralia. Export names, phones, clinic addresses, ratings and services into a clean dataset.
- [Ophthalmologist Leads in Queretaro](https://apify.com/scrapers_lat/doctoralia-scraper/examples/ophthalmologist-leads-queretaro): Get ophthalmologist leads in Queretaro from Doctoralia. Names, phones, clinic addresses, ratings and services collected into a clean dataset.
- [Orthopedist Leads in Leon](https://apify.com/scrapers_lat/doctoralia-scraper/examples/orthopedist-leads-leon): Extract orthopedist and trauma doctor leads in Leon from Doctoralia. Names, phones, clinics, reviews and services in a structured dataset.
- [Psychologist Leads in Puebla](https://apify.com/scrapers_lat/doctoralia-scraper/examples/psychologist-leads-puebla): Collect psychologist leads in Puebla from Doctoralia. Get names, phones, addresses, ratings and services in a structured dataset for outreach.
- [Dentist Directory Leads in Guadalajara](https://apify.com/scrapers_lat/doctoralia-scraper/examples/dentist-leads-guadalajara): Dentist Directory Leads in Guadalajara
- [Dermatologist Directory Leads in Mexico City](https://apify.com/scrapers_lat/doctoralia-scraper/examples/dermatologist-leads-mexico-city): Dermatologist Directory Leads in Mexico City
- [Pediatrician Directory Leads in Monterrey](https://apify.com/scrapers_lat/doctoralia-scraper/examples/pediatrician-leads-monterrey): Pediatrician Directory Leads in Monterrey

### Related scrapers

Need data from the same space? Here are other scrapers we build and maintain:

- [Paginas Amarillas Business Listings Scraper](https://apify.com/scrapers_lat/paginasamarillas-scraper): Extract business listings from Páginas Amarillas across 9 LATAM countries. Scrape business name...
- [Argentina Dollar Exchange Rate Scraper](https://apify.com/scrapers_lat/argentina-dolar-scraper): Scrape Argentina dollar exchange rates (blue, oficial, MEP, CCL, tarjeta, cripto) with buy and sell...
- [B3 Brazil Listed Company Registry Scraper](https://apify.com/scrapers_lat/b3-scraper): Extract the B3 Brazilian stock exchange listed-company registry. Scrape company name, trading name...
- [SUNAT Peru RUC Scraper](https://apify.com/scrapers_lat/sunat-scraper): Extract Peru SUNAT taxpayer records by RUC or company name: legal name, status, tax address, CIIU...
- [Colombia SECOP Scraper](https://apify.com/scrapers_lat/colombia-secop-scraper): Extract Colombia public contracts from SECOP II (datos.gov.co): entity and supplier, NIT, contract...
- [Chile Mercado Publico Supplier & Award Scraper](https://apify.com/scrapers_lat/mercado-publico-scraper): Extract Chile state suppliers from Mercado Publico and ChileProveedores with public-procurement...

### More scrapers at scrapers.lat

This actor is built and maintained by [scrapers.lat](https://scrapers.lat), where we publish scrapers for Latin American and US public platforms: real estate, jobs, e-commerce, company registries and government data. Browse the full catalog, see live sample output for each one, or ask us for a custom scraper at [scrapers.lat](https://scrapers.lat).

***

> This actor is an independent tool and has no affiliation with Doctoralia or Docplanner. It only accesses data that doctors have published publicly on their own Doctoralia profiles, including the practice phone, professional licence number and patient reviews. Personal and contact details may count as personal data under laws such as the GDPR and Mexico's LFPDPPP, so you are responsible for having a lawful basis before processing them and for using the output in accordance with Doctoralia's terms of service.

# Actor input Schema

## `specialty` (type: `string`):

Specialty or clinic type to search, e.g. Cardiología, Dermatología, Odontología, Laboratorio, Ginecología. Used with Country (and optional City) to find clinics and medical centers.

## `location` (type: `string`):

City or area to narrow the search, e.g. Ciudad de México, Guadalajara, Bogotá. Leave empty to search the whole country.

## `country` (type: `string`):

Doctoralia country to search.

## `maxClinics` (type: `integer`):

Maximum number of clinics to collect.

## `withDetails` (type: `boolean`):

When enabled, each clinic profile is fetched for phone, full address, description, services and prices, the doctors practising there, opening hours and accepted insurances. Slower but richer.

## `startUrl` (type: `string`):

Optional. Paste a full Doctoralia clinics search URL to override the fields above, e.g. https://www.doctoralia.com.mx/clinicas/cardiologia

## `enrichContacts` (type: `boolean`):

Optional paid add-on, off by default. For each result without an email, attempt to find a public business contact email and a contact person's name. Billed per attempt, plus an extra charge only when an email is found.

## `enrichContactsMax` (type: `integer`):

Cap how many results the add-on tries to enrich, to control add-on cost. Leave empty to attempt all. Free Apify accounts are capped at 3.

## Actor input object example

```json
{
  "specialty": "Cardiología",
  "location": "Ciudad de México",
  "country": "mx",
  "maxClinics": 10,
  "withDetails": true,
  "enrichContacts": false,
  "enrichContactsMax": 50
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "specialty": "Cardiología",
    "location": "Ciudad de México",
    "country": "mx",
    "maxClinics": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapers_lat/doctoralia-clinics-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "specialty": "Cardiología",
    "location": "Ciudad de México",
    "country": "mx",
    "maxClinics": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("scrapers_lat/doctoralia-clinics-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "specialty": "Cardiología",
  "location": "Ciudad de México",
  "country": "mx",
  "maxClinics": 10
}' |
apify call scrapers_lat/doctoralia-clinics-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=scrapers_lat/doctoralia-clinics-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/7oKMxICCJJ5ZLkwBk/builds/rM3HMG4XcXER6tIak/openapi.json
