local.ch scraper · Swiss business directory & local leads
DeprecatedPricing
from $2.99 / 1,000 results
local.ch scraper · Swiss business directory & local leads
DeprecatedExtract Swiss businesses and healthcare providers from local.ch (local.ch). Search URL (/s/, /q/) or profile URLs (/d/). Full profile export: phone, email, website, address, ratings, treatments, GPS. Lead gen & CRM enrichment — Geneva, Zurich, Vaud, Bern, all cantons.
Pricing
from $2.99 / 1,000 results
Rating
0.0
(0)
Developer
Corentin Robert
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
8 days ago
Last modified
Categories
Share
local.ch scraper
Build contact-ready lists of Swiss businesses and healthcare providers in minutes — phone, email, website, address, ratings, specialties, and more — from local.ch, Switzerland's leading local directory.
Covers all of Switzerland and major regions: Geneva, Vaud (Lausanne), Zurich, Bern, Basel, Valais, Ticino, and every canton via local.ch search URLs.
Paste a search link to discover businesses by category and region, or paste profile URLs to enrich a list you already have. No login. No API key. No code. Export to CSV, Excel, or JSON.
Built for: Lead generation · CRM enrichment · Territory mapping · Outbound prospecting · Market research
📄 ./sample-output.csv — see exactly what you get before running anything.
Custom automation or integrations: corentin@outreacher.fr
Why use this scraper?
- Two workflows in one tool — territorial search or enrich existing profile links
- Any category — dentists, surgeons, restaurants, lawyers, physiotherapists, and more
- Any region — whole Switzerland, a canton, or a single city
- Contact-focused — phone, email, and website when the business publishes them
- Rich profiles — ratings, languages, treatments, payment methods, opening hours
- CRM-ready — one row per business, structured fields, instant export
- Lower cost — Swiss DATACENTER proxy enabled by default (~10× cheaper than residential)
Two ways to use it
| Mode | What you get | Best for |
|---|---|---|
| Search URL | Every business on a local.ch search page, with full contact details | Prospecting by category + region — e.g. all dentists in Geneva, all restaurants in Zurich |
| Profile URLs | Full details for the profile pages you paste | Refreshing or enriching a CRM list when you already have local.ch links |
1 — Search by category and region
You copy a local.ch search URL from your browser — same filters, same region as if you searched manually.
How to start:
- On local.ch, run your search (category + location)
- Copy the URL from the address bar (
/fr/s/…or/de/s/…) - In the Actor, choose Search URL mode and paste the link
- Optional: set Max rows to
50–200for a first test - Run — open Dataset when finished
Examples of search URLs:
- Dentists in Geneva:
…/fr/s/dentiste/geneve - Dentists in Zurich (DE):
…/de/s/zahnarzt/zuerich - Surgeons (broad):
…/fr/s/chirurgien - Restaurants in Lausanne:
…/fr/s/restaurant/lausanne - Lawyers in Bern:
…/fr/s/avocat/berne
You can paste several regional URLs in one run (e.g. Geneva + Lausanne + Zurich in a single export).
2 — Enrich profile URLs you already have
You already collected local.ch profile links (spreadsheet, CRM, previous export). Paste them — no search crawl, detail only.
How to start:
- Choose Profile URLs mode
- Paste one business page URL per line (
/fr/d/…or/de/d/…) - Run
What you get
One row per business (detail records):
| Field | What it is | Example |
|---|---|---|
name | Business or practitioner name | Cabinet dentaire Example |
phone | Phone number (Swiss format) | +41 22 123 45 67 |
email | Email when published | contact@cabinet.ch |
websiteUrl | Primary website | https://www.cabinet.ch |
address | Full address line | Rue Example 1, 1200 Genève |
city | City | Genève |
zipCode | Postal code | 1200 |
state | Canton / region | Genève |
specialties | Categories / rubriques | ["Dentiste", "Orthodontie"] |
spokenLanguages | Languages spoken | ["Français", "Deutsch"] |
treatments | Services / treatments | ["Implants", "Blanchiment"] |
paymentMethods | Accepted payment | ["Carte", "Facture"] |
openingHours | Opening schedule | structured hours |
ratingValue / ratingCount | local.ch ratings | 4.8 / 42 |
bookable | Online booking available | true / false |
latitude / longitude | GPS coordinates | map & territory tools |
profileUrl | local.ch profile link | https://www.local.ch/fr/d/… |
Download as JSON, CSV, Excel, or connect via Apify API to your CRM.
What you get — and what you don't
| Data | Available |
|---|---|
| Phone number | ✅ When published on local.ch |
| Email address | ✅ When published on the profile |
| Website | ✅ When listed on the profile |
| Address & GPS | ✅ For most businesses |
| Ratings & reviews count | ✅ When the profile has ratings |
| Specialties, languages, treatments | ✅ On complete profiles |
| Private messages or login-only data | ❌ Not scraped |
| Data behind a login | ❌ Public profiles only |
Example output
{"recordType": "detail","name": "Dr Chiou Auguste","medicalSpecialty": "Ophtalmologue","phone": "+41 58 274 22 30","email": "eauxvives@swissvisio.net","websiteUrl": "https://www.swissvisio.net/centres/eaux-vives","address": "Rue du Nant 4, 1207 Genève","city": "Genève","zipCode": "1207","specialties": ["Ophtalmologue", "Ophtalmochirurgie"],"spokenLanguages": ["Français", "Deutsch", "Anglais"],"ratingValue": 4.9,"ratingCount": 12,"bookable": true,"profileUrl": "https://www.local.ch/fr/d/geneve/1207/ophtalmologue/dr-chiou-auguste-…"}
No code required
This Actor runs entirely from the Apify Console — no Python, no JavaScript, no server to manage.
- Open the Actor on Apify and click Start
- Choose Search URL or Profile URLs
- Paste your local.ch link(s)
- Click Run
- Download CSV or Excel from the Dataset tab — or schedule weekly refreshes
Perfect for marketing teams, SDRs, and agency owners who need Swiss business leads without hiring a developer.
Export to your CRM
Download the dataset and import into the tools you already use:
| Tool | How |
|---|---|
| HubSpot | Import CSV → map phone, email, websiteUrl, city to contact properties |
| Salesforce | Data Import Wizard or Apify → Zapier/Make → Salesforce |
| Pipedrive | Import spreadsheet → match name, phone, organization |
| Lemlist / outreach tools | CSV with phone & email columns for cold email or call lists |
| Google Sheets / Excel | Direct CSV download — filter by canton, category, or city |
Each row is one business with stable fields (name, phone, email, profileUrl, address, city, zipCode, state) so mapping stays consistent run after run.
Switzerland coverage
local.ch organizes searches by category + location. You can export:
- National — e.g. all dentists or all surgeons in Switzerland
- City — Geneva, Lausanne, Zurich, Bern, Basel, Winterthur, Lucerne, St. Gallen, Lugano…
- Canton / region — whatever local.ch exposes in the URL when you search in your browser
Common prospecting setups: dentists in Geneva + Vaud, restaurants in Zurich, or a full Switzerland file for market mapping.
Use cases
| I want to… | Mode | How |
|---|---|---|
| Build a list of dentists in a canton | Search URL | Paste the local.ch search URL for that category + region |
| Map all restaurants in a city | Search URL | Paste the city search URL |
| Enrich my CRM with phone & email | Profile URLs | Paste the local.ch links from your spreadsheet |
| Test before a large export | Search URL | Set Max rows to 50–200, then remove the cap |
| Cover several cities in one run | Search URL | Paste one URL per city (Geneva, Lausanne, Zurich…) |
Tips for best results
- Test first. Set Max rows to
100before a full national run — check the output matches your needs. - Copy the URL from local.ch. Use the exact search you would run in your browser.
- Broad categories need filtering. A search like
chirurgienincludes dentists, vets, and ophthalmologists — narrow with city or a more specific term. - Emails are optional. Many rows will have phone and website without email — that's normal on local.ch.
- Proxy is pre-configured. Swiss DATACENTER proxy runs automatically on Apify — nothing to configure.
- Schedule it. Use Apify's scheduler to refresh your business database monthly.
Also scraping OneDoc?
local.ch is Switzerland's main business directory — healthcare providers and other local businesses, with ratings, treatments, and payment methods.
For practitioners on the medical booking platform OneDoc.ch — specialties, expertises, booking flags, FAQ — use our OneDoc practitioner scraper on Apify.
Same idea: paste a search URL to discover listings, or profile URLs to enrich a list you already have.
| Source | Best for |
|---|---|
| local.ch (this Actor) | Broad directory coverage — any /fr/s/… search or /fr/d/… detail page |
| OneDoc | Doctors and healthcare professionals active on OneDoc.ch |
Many teams run both and merge in Excel or their CRM for maximum Swiss coverage.
Related Actors
These Actors cover the same job or the next step in the workflow. Apify’s automatic recommendations stay inside one category — this list is the rest of the toolkit.
| Actor | Use it when |
|---|---|
| Doctolib Practitioner Scraper | Doctolib practitioner directory |
| Orphanet Scraper · Rare Disease Details · CSV Export | Orphanet Scraper |
| Planity Client Scraper | Planity Client Scraper |
| Planity Business Contact Scraper | Planity Business Contact Scraper |
| SEC EDGAR · Pharma Licensing Deals · By Company List | SEC EDGAR |
| Ameli Health Directory · Practitioners by Specialty & City | Ameli Health Directory |
| French Companies · Search & SIREN Enrich | French companies: search and SIREN enrich |
| SW Website Rankings Scraper | Rank the website / domain after you have the URL |
FAQ
Is it only for healthcare?
No — any local.ch category works: restaurants, lawyers, plumbers, dentists, etc.
Do I need a local.ch account?
No. Only public profile data is collected.
Do I need a proxy?
No. Swiss DATACENTER proxy is applied automatically on Apify cloud runs.
French, German, Italian URLs?
Yes — /fr/s/…, /de/s/…, and other local.ch locales are supported.
Important
- Use exported data in line with local.ch Terms of Service and Swiss data-protection rules.
- Field availability depends on what each business publishes — not every row has every column filled.
Support
Contact corentin@outreacher.fr for custom scraping, scheduling, or CRM integrations.
Last updated: May 2026