Skip to content

Allow per-route request handler timeouts and extending the timeout from the handler #2130

Description

@vdusek

Python already separates the navigation and request handler timeouts, but request_handler_timeout applies uniformly to every request: Router.handler() (src/crawlee/router.py) takes no per-route override, and SharedTimeout (src/crawlee/_utils/time.py) offers no way to extend an already-running budget. Add both, so a single route can get a larger timeout and a handler can buy more time once it knows how much work it faces.

JS implementation: apify/crawlee#3860

✍️ Drafted by Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request.t-toolingIssues with this label are in the ownership of the tooling team.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions