Skip to main content

Best practices

Prefer native feeds when they exist

Run scan first. If the site already publishes RSS, Atom, or JSON Feed, import that rather than reconstructing items from HTML.

Analyze layouts you will crawl again

Generate a spec once and reuse it. Specs are faster, deterministic, and easier to review than repeating the heuristic pipeline. Store them in version control or as site bridges.

Keep fetch policy conservative

Leave TLS verification and robots.txt compliance on. Bind serve to loopback unless you have tokens, an allow-list, and a reverse proxy. See security.

Use local archives for tests

extract --file / analyze --file with --base-url keeps fixtures offline and reproducible. See local input.

Inspect before automating

Use --explain or --explain-json when a layout changes. Treat confidence scores as a review aid, not a correctness probability.

Deliver new items through watch, not cron-plus-extract

watch tracks seen items, retries failed deliveries, and supports stdout, webhook, SMTP, and Telegram channels. See delivery.

Measure before raising concurrency

Default browser concurrency is one for a reason. Batch --max-workers and --async should be sized against the target site's robots and rate limits.