ddp_utils.browser.backends.selenium.session¶
import ddp_utils.browser.backends.selenium.session
Owned Selenium session lifecycle.
- class ddp_utils.browser.backends.selenium.session.SeleniumBrowserSession(descriptor: BackendDescriptor, native: SeleniumNativeObjects)¶
Bases:
objectOwn one Selenium or SeleniumBase browser session.
Parameters
Name
Type
Description
descriptor
Immutable concrete backend descriptor.
native
Explicit provider-native objects.
Examples
Ensure WebDriver is always closed at context exit:
with session: session.native.driver.get("https://example.com")
Bind descriptor and owned native objects.
Parameters
Name
Type
Description
descriptor
Immutable concrete backend descriptor.
native
Explicit provider-native objects.
Examples
Backends create sessions after successful launch:
session = SeleniumBrowserSession(descriptor, native)
- property descriptor: BackendDescriptor¶
Return immutable Selenium backend identity and capabilities.
Returns
Concrete backend descriptor.
Examples
Record whether SeleniumBase created the driver:
print(session.descriptor.provider)
- property native: SeleniumNativeObjects¶
Return explicit provider-native Selenium objects.
Returns
WebDriver and optional SeleniumBase object.
Examples
Access raw WebDriver deliberately:
driver = session.native.driver
- property closed: bool¶
Return whether WebDriver resources have been released.
Returns
Trueafter the first successful close call.Examples
Confirm cleanup after context exit:
assert session.closed
- close() None¶
Quit the owned WebDriver exactly once.
Examples
Close explicitly outside a context manager:
session.close()