Repository navigation
osn-selenium v1.1.0-beta.0
Pre-releaseosn-selenium v1.1.0-beta.0 - Modular CDP Architecture
We are excited to announce the release of osn-selenium v1.1.0-beta.0. This version marks a major architectural shift in how the library handles the Chrome DevTools Protocol (CDP). By moving towards a modular versioning system, we ensure long-term compatibility with various browser versions while keeping the core library lightweight and maintainable.
Key Improvements in v1.1.0-beta.0:
- Modular CDP Versioning System: We have transitioned from a monolithic CDP implementation to a modular one. Core CDP executors are now handled through a custom
MetaPathFinderimport hook. This allows the library to support external, version-specific CDP packages (hosted at osn-selenium-cdp) without bloating the main installation. - Dynamic CDP Access: Added a new
get()method toCDPExecutorclasses (both Sync and Trio-based). This allows developers to dynamically load and access any specific CDP package version. It includes lazy loading and built-in validation to ensure the required version-specific package is installed. - Enhanced Target Logging: Updated the DevTools target logging functions with a new
send_waitparameter. This provides better control over log delivery; when enabled, the system will wait for logs to be successfully sent through the channel, reducing the risk of dropped log entries during high-traffic sessions. - Smart Dependency Management: Introduced
CDPPackageError, which provides helpful instructions and directpipcommands if a user attempts to access a CDP version that isn't currently installed in their environment. - Optimized Performance: Significant cleanup of the codebase was performed, including the removal of hundreds of redundant abstract classes and optimized imports, resulting in a faster initialization time.
Putting It All Together:
This release transforms osn-selenium into a more flexible and robust framework. By decoupling the CDP protocol versions from the core library, we've solved the common issue of protocol deprecation in standard Selenium. Combined with the improved logging reliability, this version provides a professional-grade foundation for complex browser automation and fingerprinting tasks.