Malin 8a4ec88d73 fix: always fallback to https on any http failure (fixes HTTPS-only sites marked dead)
Previous fix only retried on ConnectError. Servers that accept TCP on port 80
but hang, return protocol errors, or timeout also need the https fallback.
Now any exception on http triggers https retry. Shorter http timeout (4s)
avoids wasting time on non-responsive port 80.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 17:43:44 +02:00

DomGod — Domain Intelligence Dashboard

Dockerized dashboard for filtering, enriching, scoring, and exporting leads from a 72M-domain dataset.

Quick start

docker compose up --build

Open http://localhost:6677

On first boot, the container downloads domains.parquet (~GB) and caches it in ./data/. Subsequent restarts skip the download.

Environment variables (docker-compose.yml)

Variable Default Description
DATA_DIR /data Where parquet + sqlite live
PARQUET_URL GitHub raw URL Source parquet
CONCURRENCY_LIMIT 50 Parallel enrichment workers
SCORE_THRESHOLD 60 "Hot lead" threshold
TARGET_TLDS es,com,net TLDs to prioritise
TARGET_COUNTRIES ES,GB,DE,FR,RO,PT,AD,IT Countries for scoring bonus

Scoring

Signal Points
Domain is live +20
SSL expiry < 30 days +15
No valid SSL +15
Known CMS detected +15
No MX record +10
IP in target country +10
Shared hosting server +10
Local business keywords in title +5

Max score: 100. Hot ≥ 80, Warm 5079, Cold < 50.

API

GET  /api/stats
GET  /api/domains?tld=es&page=1&limit=100&live_only=false
POST /api/enrich/batch      { "domains": ["example.com"] }
GET  /api/enrich/status
POST /api/enrich/pause
POST /api/enrich/resume
POST /api/enrich/retry
GET  /api/enriched?min_score=60&cms=wordpress&country=ES
GET  /api/export?tier=hot   (streams CSV)
POST /api/score/run
Description
No description provided
Readme 794 KiB
Languages
Python 60.6%
HTML 39.3%
Dockerfile 0.1%