# OVHcloud (`ovhcloud`) - **Domain**: `www.ovhcloud.com` · **Kind**: operator · **Priority**: 1 · **Enabled**: yes - **License / attribution**: Publicly accessible operator pages; factual data only; © OVHcloud — attribution “OVHcloud” - **Coverage**: FR, CA, US, DE, GB, PL, AU, SG, IN, IT, ES, MA ## What it collects Facility records (`kind: facility`) via parser(s) `ovhcloud_locations_v1`, `ovhcloud_facility_v1` in `apps/worker/src/connectors/operators2/emea.ts`. Fields published by the pages and captured: name, city, countryIso2, lat/lng (approximate, from the operator's own map JSON), regionName (city pages), description. No MW (not published). Every field carries an extraction method in `methods` (e.g. `json-ld:PostalAddress`, `regex:it_mw_v1`, `attr:data-value+MW`, `lookup:city-country`) for provenance. Coordinates are only taken from JSON-LD / embedded JSON / map links published by the operator — never geocoded. Status defaults to `operational` unless the page uses pipeline wording (under construction / coming soon / planned). ## Discovery - Sitemaps: `https://www.ovhcloud.com/en/www.ovhcloud.com_en_sitemap.xml` - Seeds: `/en/datacenter/` - Include: `/en/datacenter/` - Exclude: `\?`, `#` - Classify: `/en/datacenter/$` → facility_index (facility_index); `/en/datacenter/[a-z-]+/[a-z-]+/[a-z-]+(/[a-z-]+)?/$` → facility_pages (facility_page) Newsroom URLs (when configured) rely on the GenericConnector news fallback (press_release → `news_event` when data-center relevant). ## Schedule & fetch - Schedule: facility_index weekly, facility_pages monthly, sitemap weekly - Fetch: L1→L2, 15 rpm, concurrency 2, robots.txt respected, max 20 premium credits/run. All pages are served at L1 (plain HTTP); `maxLevel` is capped at 2 so false-positive “blocked” heuristics (HubSpot / cookie-consent strings) never spend Scrapfly credits. ## Quirks Index page embeds a `datacenters` JSON map (city, country, lat/lng per datacenter location) → one record per location (geo precision approximate). Only depth-6 city pages (continent/country/region/city) are parsed for name/description/region; depth-5 pages are ambiguous (region vs city) and are skipped. OVHcloud does not publish per-site MW. ## Verification (live, 2026-09-11) `try-connector --limit N`: discovered 67 URLs (facility_index=1, facility_pages=43, default=23); sampled pages → 16 entities, 16 valid, 0 rejected, 0 premium credits.