spb/datacenterindex
Public
HTML 53.9%
TypeScript 44.5%
JavaScript 0.6%
SQL 0.5%
1# qts — QTS Data Centers (q.com)23| | |4|---|---|5| Config | `config/connectors/qts.yaml` |6| Parser | `apps/worker/src/connectors/operators1/qts.ts` → `qts_facility_v1` |7| Kind / priority | operator / 1 |8| License / attribution | Publicly accessible operator pages; factual data only; © QTS Realty Trust / Quality Technology Services |9| Cadence | facility pages weekly · newsroom daily · sitemap weekly |1011## What is crawled12- `qtsdatacenters.com` 301s to `q.com`. Yoast sitemaps `/data-centers-sitemap.xml` (55 campus pages) and `/news-sitemap.xml` (115); RSS `/feed/`.13- Facility pages `/data-centers/<slug>/`. Language duplicates excluded: `-nl/` (Dutch), `calatorao` (ES original → `calatorao-en` kept), `vimercate` (IT original → `vimercate-en` kept). The `-en` suffix is stripped from the key so `qts:calatorao` stays stable.14- News `/news/<slug>/` → GenericConnector news fallback.15- robots.txt disallows a single PDF.1617## Access18Open WordPress/Elementor site, L1 works (0 credits). `maxLevel: 4`, `maxCreditsPerRun: 40`.1920## Fields (method)21Two templates (US campus vs European site); the parser is text-based:22- `name` ← `QTS <h1>` ("QTS Ashburn 3", "QTS Eemshaven" — the site number is kept because several campuses share a city); `city` ← h1 without the trailing site number ("Ashburn"); `code` ← `<h2>Ashburn 3 (ASH3)</h2>`.23- `totalPowerMw` ← "Critical campus capacity 80 MW+" (US) or the MW immediately followed by "total …" (EU: "20MW total critical power capacity"; the "36MW of utility power" figure is ignored).24- `siteAreaHa` ← "25 acre campus" → 10.12 ha. `buildingSqm` ← "200,000 ft2 facility" / "22,000 m2 total" when present.25- `address`/`city`/`regionName`/`postalCode`/`countryIso2` ← Elementor hotspot tooltips ("22291 Shellhorn Rd Ashburn, VA 20147") or NA/EU address regex on the text; fallback city from h1, state from the "Proud to call Virginia home" banner, country from the title ("Netherlands-Eemshaven").26- `lat`/`lng` ← Elementor Google-Maps widget `"address":"53.437…, 6.858…"` (operator-placed marker) → `exact`.27- `description` ← intro paragraph (the Yoast excerpt concatenates nav/CTA text and is skipped when it contains "Schedule a tour"), plus "Buildings: ASH3 DC1: 22291 Shellhorn Rd …; ASH3 DC2: …".28- Key `qts:<slug>`; `externalIds.qts_slug`.2930## Verification (2026-09-11)31- Discovery: 166 URLs → `facility_pages=51`, `newsroom=115`.32- `--url` Ashburn 3: code ASH3, 22291 Shellhorn Rd, Ashburn, VA 20147, US, 80 MW, 10.12 ha, two building addresses — matches the live page.33- `--url` Eemshaven (EN): NL, 20 MW critical, geo 53.43742/6.85830.34- Sweep of 8 spread pages (Miami, Santa Clara, Suwanee 1, Richmond 2, Groningen, Clinton, Blakely, Hillsboro 1): 8/8 valid; 5/8 with country. Newsroom sample 4/4 valid news events. Credits: 0.3536## Gaps / TODO37- US pages without an address block, state banner or map (Miami, Santa Clara, Hillsboro 1) end up with city but no country (Miami/Santa Clara do carry coordinates) — ingest can resolve from geo/city.38- "Critical campus capacity" is a campus figure; QTS pages are campus pages, so it is stored on the campus record (no per-building split is published).39