Doctolib scraper
Pricing
$15.00/month + usage
Doctolib scraper
Extract medical professionals data from Doctolib.fr, Doctolib.it, and Doctolib.de. Scrapes doctor profiles, contact information, specializations, and clinic details across France, Italy, and Germany. Supports multiple cities, professions, and automated pagination with structured JSON output.
Pricing
$15.00/month + usage
Rating
1.7
(2)
Developer

Giovanni Bianciardi
Actor stats
1
Bookmarked
13
Total users
1
Monthly active users
50 days
Issues response
3 days ago
Last modified
Categories
Share
Apify Actor for Doctolib Data Scraping
Optimize your data extraction from Doctolib with our advanced Apify actor, designed for scraping comprehensive information about healthcare professionals and medical facilities.
Usage Instructions
Input Parameters
- City: Specify the list of cities to scrape.
- Professions: Specify the list of medical professions/specialties to scrape.
Output Data
The Apify actor for Doctolib produces JSON files containing detailed healthcare professional information, including:
Basic Information
- nome: Doctor/facility name
- profile_url: Direct link to the professional's Doctolib profile
- id: Unique practice/establishment identifier
- immagine: Profile image URL
- tipo: Type of provider (medico, ospedale, etc.)
- city: Location city
- doctor_name: Full name of the healthcare professional
- doctor_subtitle: Professional title/specialty
Location Details
- places: Array of practice locations with:
- address: Full street address
- city: City name
- zipcode: Postal code
- latitude: Geographic latitude coordinate
- longitude: Geographic longitude coordinate
- phone: Contact phone number
- main_address: Primary practice address
- main_phone: Primary contact number
Professional Information
- practitioner_id: Unique practitioner identifier
- practitioner_name: Doctor's full name
- practitioner_speciality: Medical specialty
- specialities: Array of all specialties offered, including:
- id: Specialty identifier
- name: Specialty name (e.g., "Médecin généraliste", "Psychologue")
- slug: URL-friendly specialty identifier
- kind: Category type (medical, paramedical, official)
Booking & Services
- has_online_booking: Online appointment availability
- telehealth_available: Video consultation availability
- agendas: Array of available booking schedules with:
- agenda_id: Schedule identifier
- speciality_id: Associated specialty
- practitioner_id: Associated practitioner
- booking_disabled: Booking availability status
- visit_motive_count: Number of available appointment types
- visit_motives: Array of appointment types available (e.g., "Consultation de suivi", "Dépistage VIH/IST")
- visit_categories: Categorized appointment types
- vaccination_motives: Available vaccination services
Example Output
[{"nome": "Centre de santé sexuelle - Le 190","profile_url": "https://www.doctolib.fr/centre-de-sante/paris/cds-190?pid=practice-58081","id": "practice-58081","immagine": "https://media.doctolib.com/image/upload/q_auto:eco,f_auto,dpr_2/w_62,h_62,c_fill,g_face/uhf09k73j9ndwe2irtbp","tipo": "ospedale","city": "paris","doctor_name": "Centre de santé sexuelle - Le 190","doctor_subtitle": "Centre de santé","practitioner_name": "Dr Thibault Orriere","practitioner_speciality": "Médecin généraliste","places": [{"practice_name": "Centre de santé sexuelle - Le 190","city": "Paris","zipcode": "75011","address": "2 Impasse de la Baleine","latitude": 48.86752509999999,"longitude": 2.377154700000006,"phone": "01 55 25 32 72"}],"main_address": "2 Impasse de la Baleine, 75011 Paris","main_phone": "01 55 25 32 72","has_online_booking": true,"telehealth_available": true,"visit_motives": ["Suivi VIH","Suivi PrEP","Dépistage VIH/IST et/ou commencer la PrEP","Remise des résultats","Urgence IST : symptômes, résultat positif, cas contact"],"specialities": [{"id": 2,"name": "Médecin généraliste","slug": "medecin-generaliste","kind": "medical"},{"id": 14,"name": "Psychologue","slug": "psychologue","kind": "official"}],"agendas": [{"agenda_id": 149704,"practice_id": 58081,"speciality_id": 2,"practitioner_id": 11184257,"booking_disabled": false,"phone": "01 55 25 32 72","visit_motive_count": 4}]}]
Data Types Included
The scraper captures various types of healthcare providers:
- medico: Individual doctors and medical practitioners
- ospedale: Hospitals and medical centers
- establishment: Public hospitals and healthcare institutions
Pay-Per-Event Charging
This actor implements Apify's Pay-Per-Event charging system with automatic cost protection.
Tracked Events
- doctor-scraped: Charged when a doctor's data is successfully scraped and saved
- api-call: Charged for each Doctolib API call made
- page-processed: Charged when a page is fully processed
Protection Features
The integrated CostProtectionManager provides automatic safeguards:
- Negative Margin Protection: Stops execution if losses exceed $0.10
- Runtime Protection: Maximum execution time of 1 hour
- Event Limit Protection: Maximum 10,000 events per run
- Real-time Status Updates: Live margin and progress tracking
Financial Summary
At the end of each run, a detailed summary is saved to charging_summary including:
- Total revenue and costs
- Margin percentage and profitability
- Per-event breakdown
- Event counts and runtime statistics
Configuration
Event costs are configured in src/main.py. Currently all events are tracked at $0.00 cost, but can be configured for actual Pay-Per-Event pricing when published to Apify Store.
event_costs = {"doctor-scraped": Decimal('0.00'), # Configure actual cost per doctor"api-call": Decimal('0.00'), # Configure actual cost per API call"page-processed": Decimal('0.00') # Configure actual cost per page}
Important Notes
- Ensure compliance with Doctolib's terms of service and applicable data protection regulations
- The scraper handles multiple practice locations for providers who work at different facilities
- Booking availability and appointment types are dynamic and reflect real-time data
- Some providers may have booking disabled or limited telehealth options
- You can customize the scraper's behavior by adjusting the logic in
src/main.py - For support or issues, contact the developer at [your contact details]
Optimized Features
Our Apify actor for Doctolib is perfect for:
- Doctolib data scraper: Efficiently scrape comprehensive data from Doctolib
- Healthcare professionals scraping: Gather detailed information about medical practitioners
- French medical data extraction: Extract medical provider data from France's leading booking platform
- Scrape Doctolib profiles: Extract complete profiles and practice details
- Medical appointment data: Collect information about available services and booking options
- Healthcare facility mapping: Extract location and contact information for medical facilities
- Specialty-based medical data: Filter and extract data by medical specialties
By using this optimized Apify actor, you can efficiently gather and utilize extensive data on healthcare professionals from Doctolib, enhancing your healthcare data projects and analysis capabilities.