A cross-platform library to load and decrypt cookies from any web browser, built with Rust for speed and safety.
Rookie is a library that allows developers to programmatically load and decrypt cookies from virtually any web browser across Windows, Linux, and macOS. It solves the problem of accessing browser cookies for automation, testing, or data migration by handling platform-specific encryption and file locking challenges. Built with Rust for performance, it provides bindings for Rust, Python, and JavaScript.
Developers and engineers working on web automation, scraping tools, testing frameworks, or applications that need to interact with browser cookies programmatically.
Developers choose Rookie for its exceptional cross-browser and cross-platform support, high performance due to its Rust core, and the ability to bypass modern browser restrictions like Chrome's appbound encryption. Its multi-language availability makes it versatile for different tech stacks.
Load cookies from your web browsers
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Consistently works on Windows, Linux, and macOS, handling OS-specific differences in cookie storage and encryption as emphasized in the README.
Supports over a dozen browsers including Chrome, Firefox, Edge, and Safari, with detailed testing dates provided in the README's table.
Built with Rust for fast cookie extraction and ensures type safety across Rust, Python, and JavaScript bindings, as highlighted in the features.
Offers native libraries for Rust, Python, and JavaScript/TypeScript, with clear installation and usage examples for each language.
For Chrome on Windows v130+, requires administrator privileges to bypass appbound encryption and file locking, which is explicitly noted in the README as a limitation.
Only extracts cookies; does not support writing or modifying cookies, limiting use to read-only operations like automation and testing.
Relies on a config.json file for browser paths; unsupported browsers require manual contribution via PRs or issues, as admitted in the 'Support new browsers' section.