# Changelog of Sextant France · Agent Emails, Phones & GPS (`corent1robert/sextant-agents-scraper`) Actor

- **URL**: https://apify.com/corent1robert/sextant-agents-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/corent1robert/sextant-agents-scraper.md

## Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

### \[1.5] - 2026-03-10

#### Added

- **listingsCount, listingValueTotal** — From agent liste page (urlListe): nombre de biens + somme des prix affichés (€).

### \[1.4] - 2026-03-10

#### Added

- **LinkedIn column included by default** — `linkedinUrl` filled for agents missing it. No input needed. Creator configures API keys via `actor.json` + `apify secrets` (OPENAI\_API\_KEY, AUTOM\_DEV\_API\_KEY). Output: `linkedInCorrelationScore` (0-100).

#### Changed

- README Also available: retired eXp / Espaces Atypiques Store listings removed — use the French Real Estate Agents hub.
- **Input simplified** — LinkedIn options removed from UI. Only "Agent URLs (optional)" remains.
- **Logs cleaned** — Shorter messages, debug output removed. Social progress every 20 agents; LinkedIn progress format: `[done/total] pct% · ETA`.
- **LinkedIn validation** — Reject matches when URL slug doesn't contain agent's name (avoids philippe-calvez for Frédérique Calves, florence-malvault for Florent Cifci).
- **Min score 50** — Kept; slug validation handles false positives.
- **Proper case** — Hyphenated names: Jean-charles → Jean-Charles, Daumas-castanet → Daumas-Castanet.

### \[1.3] - 2026-03-10

#### Changed

- **Input simplified** — Mode selector removed. Empty `startUrls` = full list; with URLs = enrich those only
- **Social links** — Only agent-specific profiles (excludes Sextant brand: sextantproperties, SextantFrance, etc.)

### \[1.2] - 2026-03-09

#### Added

- **phonePro, phonePerso** — French heuristic: 01-05 = pro (landline), 06-07 = perso (mobile)
- **name** in proper case — "MALVAULT Florence" → "Malvault Florence", "COLIN D'HIVER" → "Colin d'Hiver"
- **instagramUrl, facebookUrl, linkedinUrl** — Scraped from agent detail pages
- Detail page scraping re-enabled for social links extraction only

### \[1.1] - 2026-03-09

#### Removed

- Detail pages scraping — was not enriching data, caused ENOTFOUND on invalid URLs (e.g. `https://.sextantfrance.fr`), and wasted ~50 extra requests. All data comes from agents-map.

### \[1.0.0] - 2026-03-09

#### Added

- Initial release
- Map mode: scrape full agents list from `agents-map.htm` (~95 agents)
- URLs mode: enrich from custom agent page URLs
- Extracted fields: lastName, firstName, name, phone, email, address, city, postalCode, lat, lng, urls, photoUrl, agency
- Windows-1252 decoding for correct accents (Chloé, Déborah, etc.)
- CSV export with semicolon separator (local runs)
- Apify Actor ready for deployment
