Optimhome Agent Scraper avatar

Optimhome Agent Scraper

Under maintenance

Pricing

from $9.99 / 1,000 results

Go to Apify Store
Optimhome Agent Scraper

Optimhome Agent Scraper

Under maintenance

Scrape Optimhome real estate agent — emails, phones, RSAC, SIRET, LinkedIn URLs. Full directory. Export CSV, JSON, Excel. Lead gen, CRM, prospecting. One click.

Pricing

from $9.99 / 1,000 results

Rating

0.0

(0)

Developer

Corentin Robert

Corentin Robert

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

17 days ago

Last modified

Share

Optimhome — Advisors Scraper

Extract advisor contact data from Optimhome. Input: List mode (full directory) or URLs (enrich specific profiles). Output: names, phones, emails, RSAC, SIRET, sectors, LinkedIn URLs. Export as CSV, JSON, or Excel. One click.

Built for: lead generation · CRM enrichment · LinkedIn outreach · market mapping · insurance partnerships

Custom setup or integration? corentin@outreacher.fr


What does it do?

Optimhome is a major French real estate network with ~1,800 advisors. Advisors publish profiles on optimhome.com/conseillers. This Actor scrapes the directory at scale, extracts contact details from profile + contact pages, and enriches profiles with LinkedIn URLs when enrichment is enabled. Playwright (real browser) bypasses Cloudflare. No proxy required.

ModeHow it worksBest for
listScrapes full directory with pagination, then visits each profile + contact pageFull France advisor list
urlsEnriches specific advisor profile URLs you provideCRM refresh, adding missing fields

Phase 1: List advisors via Playwright. Phase 2: Profile pages (sector, photo, biography). Phase 3: Contact pages (RSAC, SIRET, phone, email). Phase 4: LinkedIn enrichment when enabled. No proxy required.

LinkedIn column — Profiles are enriched with LinkedIn URLs when enrichment is enabled in Actor settings. No input needed. Progress is logged during the run.


What data does it extract?

CategoryFields
Contactemail, phone
Businessrsac, siret, jobTitle
Locationcity, postalCode, sector
Profilename, url, photo, biography, specialities
Social proofrating, reviewCount, optimustLevel
LinksurlAnnonces (listings), urlEstimation (valuation)
LinkedInlinkedInUrl, linkedInCorrelationScore (when enabled)

Fields not present on the source are null. Some contact pages mask phone numbers; we extract what is available in the HTML.


Input

List mode (full directory):

{
"mode": "list"
}

Set maxResults to limit; 0 or empty = unlimited.

List mode with limit:

{
"mode": "list",
"maxResults": 200
}

URLs mode (enrich specific profiles):

{
"mode": "urls",
"startUrls": [
{ "url": "https://caroline-accart.optimhome.com" },
{ "url": "https://rudolphe-ackermann.optimhome.com" }
]
}

Input parameters

ParameterTypeDefaultDescription
modeString"list""list" (full directory) or "urls" (enrich links)
startUrlsArray[mode=urls] Advisor profile URLs — one per line
maxResultsInteger0Max advisors to extract. 0 = no limit (full directory)

LinkedIn enrichment runs when enabled in Actor settings. No input fields needed.


Output

Each advisor is one row. Results stream to the Dataset tab during the run.

{
"url": "https://caroline-accart.optimhome.com",
"name": "Caroline Accart",
"city": "Lyon",
"postalCode": "69001",
"sector": "Lyon 1er",
"specialities": ["Ancien", "Neuf", "Location"],
"biography": "About me...",
"photo": "https://...",
"jobTitle": "Mandataire immobilier",
"rsac": "123456789",
"siret": "12345678901234",
"phone": "0612345678",
"email": "caroline.accart@optimhome.com",
"rating": 4.9,
"reviewCount": 42,
"optimustLevel": "Argent",
"linkedInUrl": "https://www.linkedin.com/in/...",
"linkedInCorrelationScore": 85,
"urlAnnonces": "https://...",
"urlEstimation": "https://..."
}

Download in JSON, CSV, Excel, or HTML from the Dataset tab. LinkedIn fields appear when enrichment is enabled.


How to use

Step-by-step (List mode)

  1. Open the Actor Input tab
  2. Set Mode to List — All advisors (directory)
  3. (Optional) Set maxResults to limit; leave at 0 for full directory
  4. Click Start
  5. Download results from the Dataset tab (streams progressively)

Step-by-step (URLs mode)

  1. Go to optimhome.com/conseillers and collect advisor profile URLs
  2. Set Mode to URLs — Enrich advisor profile URLs
  3. Paste URLs into Advisor URLs (one per line)
  4. Click Start
  5. Download results from the Dataset tab

LinkedIn column: Enable enrichment in Actor settings. LinkedIn URLs are added automatically.


Local development

npm install
npm run build

Edit storage/key_value_stores/default/INPUT.json or create it at the project root, then run:

cp INPUT.json storage/key_value_stores/default/INPUT.json 2>/dev/null || true
apify run --purge-none

Example for List mode:

{
"mode": "list",
"maxResults": 5
}

Example for URLs mode:

{
"mode": "urls",
"startUrls": [
{ "url": "https://caroline-accart.optimhome.com" }
]
}

Output: output.csv and storage/datasets/default/. Deploy with apify push.

Tests: npm test · Benchmark: npm run benchmark (OLD vs NEW config comparison).


Performance and cost

AdvisorsScraping onlyWith LinkedIn
50~1–2 min~2–3 min
200~5–8 min~8–12 min
1,800 (full)~30–50 min~45–70 min

Playwright runs profile + contact pages per advisor. Cost uses Apify consumption-based pricing (Compute Units). Check Apify pricing for current rates.


Use cases

  • Lead generation: Build lists of real estate advisors by sector or city
  • CRM enrichment: Add RSAC, SIRET, phone, email, LinkedIn to existing records
  • LinkedIn outreach: Export advisor lists with linkedInUrl for sales campaigns
  • Market mapping: Analyze advisor density by region
  • Insurance / mortgage partners: Find advisors for partnership outreach

FAQ

Why are some phones/emails empty?
Not all advisors publish them. Contact pages may mask numbers behind a reveal button. We extract what's available in the HTML.

Cloudflare protection?
The site uses Cloudflare. This Actor uses Playwright (real browser) to bypass it. No proxy needed for basic runs.

Works outside France?
Optimhome is France-focused (mainland and overseas territories). Locale is fr by default.

Proxy required?
No. The site does not block standard requests.

Can I run on a schedule?
Yes. Use Apify Scheduler for recurring runs (e.g. weekly refresh).

LinkedIn enrichment skipped?
Enable enrichment in Actor settings. The Actor logs a message when enrichment is not configured.

CSV separator?
Semicolon (;) for Excel compatibility when exporting from Apify.


Support

For questions, custom solutions, or feedback, use the Issues tab on the Actor page.

Ready? Set mode: List, pick your target, and click Start.