pub struct BrowserType { /* private fields */ }Expand description
BrowserType represents a browser engine (Chromium, Firefox, or WebKit).
Each Playwright instance provides three BrowserType objects accessible via:
playwright.chromium()playwright.firefox()playwright.webkit()
§Example
ⓘ
let playwright = Playwright::launch().await?;
let chromium = playwright.chromium();
// Verify browser type info
assert_eq!(chromium.name(), "chromium");
assert!(!chromium.executable_path().is_empty());
// Launch with default options
let browser1 = chromium.launch().await?;
assert_eq!(browser1.name(), "chromium");
assert!(!browser1.version().is_empty());
browser1.close().await?;
// Launch with custom options
let options = LaunchOptions::default()
.headless(true)
.slow_mo(100.0)
.args(vec!["--no-sandbox".to_string()]);
let browser2 = chromium.launch_with_options(options).await?;
assert_eq!(browser2.name(), "chromium");
assert!(!browser2.version().is_empty());
browser2.close().await?;Implementations§
Source§impl BrowserType
impl BrowserType
Sourcepub fn new(
parent: Arc<dyn ChannelOwner>,
type_name: String,
guid: Arc<str>,
initializer: Value,
) -> Result<BrowserType, Error>
pub fn new( parent: Arc<dyn ChannelOwner>, type_name: String, guid: Arc<str>, initializer: Value, ) -> Result<BrowserType, Error>
Creates a new BrowserType object from protocol initialization.
Called by the object factory when server sends create message.
§Arguments
parent- Parent Playwright objecttype_name- Protocol type name (“BrowserType”)guid- Unique GUID from server (e.g., “browserType@chromium”)initializer- Initial state with name and executablePath
Sourcepub fn executable_path(&self) -> &str
pub fn executable_path(&self) -> &str
Returns the path to the browser executable.
Sourcepub async fn launch(&self) -> Result<Browser, Error>
pub async fn launch(&self) -> Result<Browser, Error>
Launches a browser instance with default options.
This is equivalent to calling launch_with_options(LaunchOptions::default()).
§Errors
Returns error if:
- Browser executable not found
- Launch timeout (default 30s)
- Browser process fails to start
See: https://playwright.dev/docs/api/class-browsertype#browser-type-launch
Sourcepub async fn launch_with_options(
&self,
options: LaunchOptions,
) -> Result<Browser, Error>
pub async fn launch_with_options( &self, options: LaunchOptions, ) -> Result<Browser, Error>
Launches a browser instance with custom options.
§Arguments
options- Launch options (headless, args, etc.)
§Errors
Returns error if:
- Browser executable not found
- Launch timeout
- Invalid options
- Browser process fails to start
See: https://playwright.dev/docs/api/class-browsertype#browser-type-launch
Trait Implementations§
Source§impl ChannelOwner for BrowserType
impl ChannelOwner for BrowserType
Source§fn parent(&self) -> Option<Arc<dyn ChannelOwner>>
fn parent(&self) -> Option<Arc<dyn ChannelOwner>>
Returns the parent object, if any. Read more
Source§fn connection(&self) -> Arc<dyn ConnectionLike>
fn connection(&self) -> Arc<dyn ConnectionLike>
Returns the connection this object belongs to.
Source§fn initializer(&self) -> &Value
fn initializer(&self) -> &Value
Returns the raw initializer JSON from the server. Read more
Source§fn dispose(&self, reason: DisposeReason)
fn dispose(&self, reason: DisposeReason)
Disposes this object and all its children. Read more
Source§fn adopt(&self, child: Arc<dyn ChannelOwner>)
fn adopt(&self, child: Arc<dyn ChannelOwner>)
Adopts a child object (moves from old parent to this parent). Read more
Source§fn add_child(&self, guid: Arc<str>, child: Arc<dyn ChannelOwner>)
fn add_child(&self, guid: Arc<str>, child: Arc<dyn ChannelOwner>)
Adds a child object to this parent’s registry. Read more
Source§fn remove_child(&self, guid: &str)
fn remove_child(&self, guid: &str)
Removes a child object from this parent’s registry. Read more
Source§fn on_event(&self, method: &str, params: Value)
fn on_event(&self, method: &str, params: Value)
Handles a protocol event sent to this object. Read more
Source§fn was_collected(&self) -> bool
fn was_collected(&self) -> bool
Returns true if this object was garbage collected.
Auto Trait Implementations§
impl !Freeze for BrowserType
impl !RefUnwindSafe for BrowserType
impl Send for BrowserType
impl Sync for BrowserType
impl Unpin for BrowserType
impl !UnwindSafe for BrowserType
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more