raptor crawl
Crawl a site and analyse it
Crawls breadth-first from the start URL, then runs every check over the pages it collected. Every other command reads what it writes.
It writes the JSON and the self-contained HTML report beside each other, and a CSV with --csv. The tabs at the top of this page are six real runs of it.
$ raptor crawl https://example.com/- The start URL is resolved first
- Raptor follows its redirect and audits where it lands. Seeding
www.on a site that redirects to the bare domain crawls the site, rather than one page with every link counted as external. - Scope is the host and port
- Links to other hosts are recorded, not crawled. The scheme isn’t compared, so an
http://link on an HTTPS site is still internal. - One politeness gate
- Workers share one delay instead of sleeping on their own. robots.txt is obeyed (RFC 9309), and a 5xx or 429 robots.txt blocks every path, as Google treats it.
- An exact page budget
--max-pagesis an upper bound, not a target. Stopping there says how many URLs were left behind, and the JSON records them.- Private addresses are refused
- Targets in private, loopback, link-local and cloud-metadata ranges are blocked, checking the address actually dialled.
RAPTOR_ALLOW_PRIVATE_TARGETS=1lifts it for an intranet or a local test site.