Changes for version 0.007 - 2026-10-25

  • do_request now raises a type=transport error (status_code 0) also for the synthetic 500 that LWP::UserAgent returns on connection failure (marked by the 'Client-Warning: Internal response' header), not only for status 599. Previously an unreachable server surfaced as type=api, status 500.
  • SYNOPSIS: enable the 'say' feature so the example runs as written
  • A redirect is not followed, a 3xx is an error that names the status, the method and the path
  • An answer that is no JSON is an error that names the status, the method and the path
  • The task id is encoded as one path segment
  • The distribution declares LWP::Protocol::https, without it every https target fails
  • The declared prerequisites are checked by a test that reads the cpanfile

Documentation

probe Crawl4AI / CloakBrowser / proxy reachability and print the chain
run the full WWW::Crawl4AI strategy chain against one URL

Modules

Perl client and fallback orchestrator for Crawl4AI
one strategy attempt in a WWW::Crawl4AI fallback chain
UA-agnostic REST client for the Crawl4AI Docker API
breadth-first iterator for deep_crawl, separating frontier management from crawl logic
service detection and content-quality classification for Crawl4AI
structured error class for WWW::Crawl4AI
markdown field resolution across Crawl4AI response shapes
builds Crawl4AI /crawl and /md request payloads
normalized result of a WWW::Crawl4AI strategy chain
role for a single crawl strategy in the WWW::Crawl4AI fallback chain
Crawl4AI strategy with full JS rendering (wait for networkidle)
last-resort Crawl4AI strategy delegating to a user coderef
Crawl4AI strategy attaching to CloakBrowser over CDP
cheapest Crawl4AI strategy - headless text mode, no escalation
Crawl4AI strategy routing through a configured proxy
Crawl4AI strategy with enable_stealth and randomized fingerprint
ordered list of strategy objects, pluggable at construction time