A reliable, flexible, and fast Rust framework for web crawling and request-response services.
Dyer is a Rust framework for building reliable, flexible, and fast request-response based services, particularly optimized for web crawling and data processing. It provides high-level APIs and an event-driven architecture to automate complex crawling tasks while maximizing system resource efficiency.
Rust developers building web crawlers, data scrapers, or any high-performance request-response services that require concurrency, flexibility, and reliability.
Developers choose Dyer for its combination of speed, ease of use, and comprehensive features—offering async concurrency, event-driven automation, and modular functionality without compromising performance, all within a Rust-native ecosystem.
Dyer is designed for reliable, flexible and fast web crawling, providing some high-level, comprehensive features without compromising speed.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Maximizes thread pool, network, and system resource utilization through async streaming and I/O, as stated in the features, ensuring high-speed crawling.
Automates request handling and data processing once generators are set, reducing manual intervention, per the event-driven architecture description.
Offers high-level, flexible wrappers that simplify complex crawling tasks, making advanced web crawling accessible, as highlighted in the user-friendly APIs feature.
Supports optional features like XPath parsing and HTTP compression via flags, reducing code bloat and speeding up compilation, as detailed in the feature flag section.
The Rust-native XPath parser (xpath-alpha) is explicitly marked as experimental and unstable, which could lead to bugs or breaking changes in production.
Requires Rust proficiency, which has a steeper learning curve compared to languages like Python, making it less accessible for quick adoption or teams new to Rust.
Focused on HTTP-based crawling, so it lacks built-in browser automation for JavaScript-rendered content, unlike tools like Puppeteer or Playwright.