SPB Git forge
38commits 1branches 0releases
338.7 MBsize
maindefault branch
3 h agolast push
HTML 53.9% TypeScript 44.5% JavaScript 0.6% SQL 0.5%

# Bulk Infrastructure (bulk)

  • Domain: bulkinfrastructure.com · Kind: operator · Priority: 2 · Enabled: yes
  • License / attribution: Publicly accessible operator pages; factual data only; © Bulk Infrastructure — attribution “Bulk Infrastructure”
  • Coverage: NO, DK

# What it collects

Facility records (kind: facility) via parser(s) bulk_facility_v1 in apps/worker/src/connectors/operators2/emea.ts.

Fields published by the pages and captured: name, code, address, city, postalCode, countryIso2, lat/lng (exact, JSON-LD), plannedPowerMw ('up to 1 GW'), renewableClaim, siteAreaHa.

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://bulkinfrastructure.com/sitemap.xml
  • Include: /data-centers/locations/[a-z0-9-]+$, /newsroom/.
  • Exclude: \?, #
  • Classify: /data-centers/locations/[a-z0-9-]+$ → facility_pages (facility_page); /newsroom/. → newsroom (press_release)

Newsroom URLs (when configured) rely on the GenericConnector news fallback (press_release → news_event when data-center relevant).

# Schedule & fetch

  • Schedule: facility_pages weekly, newsroom daily, 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

Campus pages /data-centers/locations/ carry JSON-LD LocalBusiness with postal address + GeoCoordinates; 'up to 1 GW' is recorded as planned power.

# Verification (live, 2026-09-11)

try-connector --limit N: discovered 64 URLs (newsroom=61, facility_pages=3); sampled pages → 4 entities, 4 valid, 0 rejected, 0 premium credits.