Atlas
A Python crawler and SQLite console for website audits, with source-linked findings and exports.
Crawls and records
The crawler normalizes and deduplicates URLs, reads robots.txt and sitemaps, and saves bounded crawls in SQLite. Failed fetches and empty extractions remain distinct. CSV and Markdown exports include pages, links, findings, measurements and collection events.
Cache versions
A 304 response reuses the saved artifact only when its content hash, type, extractor, schema and scoring versions match. Changed interpretation versions trigger a new parse.
- Content identity
- Hash + type
- Interpretation
- Extractor · schema · scoring
- Content identity
- Unchanged
- Interpretation
- Unchanged
A 304 response can reuse the artifact when its content hash, type and interpretation versions match.
Source and rendered pages
The JavaScript capture embeds ten records but no HTML quote cards. Render-pipeline tests keep source-only findings separate from rendered facts, so HTML counts do not establish what a visitor sees.
| Capture | HTML quote cards | Embedded records |
|---|---|---|
| Static HTML | 10 | Not recorded |
| JavaScript source | 0 | 10 |
Saved HTML from July 16, 2026. Counts describe the source HTML before rendering.
Missing data
Missing or partial provider data has its own state and does not lower the score. Findings retain page state and rule version; the July sample’s missing canonical had no assigned severity.