Skip to main content

BrowserContextOptions

Struct BrowserContextOptions 

Source
pub struct BrowserContextOptions {
Show 39 fields pub viewport: Option<Viewport>, pub no_viewport: Option<bool>, pub user_agent: Option<String>, pub locale: Option<String>, pub timezone_id: Option<String>, pub geolocation: Option<Geolocation>, pub permissions: Option<Vec<String>>, pub proxy: Option<ProxySettings>, pub color_scheme: Option<String>, pub has_touch: Option<bool>, pub is_mobile: Option<bool>, pub javascript_enabled: Option<bool>, pub offline: Option<bool>, pub accept_downloads: Option<bool>, pub bypass_csp: Option<bool>, pub ignore_https_errors: Option<bool>, pub device_scale_factor: Option<f64>, pub extra_http_headers: Option<HashMap<String, String>>, pub base_url: Option<String>, pub storage_state: Option<StorageState>, pub storage_state_path: Option<String>, pub args: Option<Vec<String>>, pub channel: Option<String>, pub chromium_sandbox: Option<bool>, pub devtools: Option<bool>, pub downloads_path: Option<String>, pub executable_path: Option<String>, pub firefox_user_prefs: Option<HashMap<String, Value>>, pub headless: Option<bool>, pub ignore_default_args: Option<IgnoreDefaultArgs>, pub slow_mo: Option<f64>, pub timeout: Option<f64>, pub traces_dir: Option<String>, pub strict_selectors: Option<bool>, pub reduced_motion: Option<String>, pub forced_colors: Option<String>, pub service_workers: Option<String>, pub record_har: Option<RecordHar>, pub record_video: Option<RecordVideo>,
}
Expand description

Options for creating a new browser context.

Allows customizing viewport, user agent, locale, timezone, geolocation, permissions, and other browser context settings.

See: https://playwright.dev/docs/api/class-browser#browser-new-context

Fields§

§viewport: Option<Viewport>

Sets consistent viewport for all pages in the context. Set to null via no_viewport(true) to disable viewport emulation.

§no_viewport: Option<bool>

Disables viewport emulation when set to true. Note: Playwright’s public API calls this noViewport, but the protocol expects noDefaultViewport. playwright-python applies this transformation in _prepare_browser_context_params.

§user_agent: Option<String>

Custom user agent string

§locale: Option<String>

Locale for the context (e.g., “en-GB”, “de-DE”, “fr-FR”)

§timezone_id: Option<String>

Timezone identifier (e.g., “America/New_York”, “Europe/Berlin”)

§geolocation: Option<Geolocation>

Geolocation coordinates

§permissions: Option<Vec<String>>

List of permissions to grant (e.g., “geolocation”, “notifications”)

§proxy: Option<ProxySettings>

Network proxy settings

§color_scheme: Option<String>

Emulates ‘prefers-colors-scheme’ media feature (“light”, “dark”, “no-preference”)

§has_touch: Option<bool>

Whether the viewport supports touch events

§is_mobile: Option<bool>

Whether the meta viewport tag is respected

§javascript_enabled: Option<bool>

Whether JavaScript is enabled in the context

§offline: Option<bool>

Emulates network being offline

§accept_downloads: Option<bool>

Whether to automatically download attachments

§bypass_csp: Option<bool>

Whether to bypass Content-Security-Policy

§ignore_https_errors: Option<bool>

Whether to ignore HTTPS errors

§device_scale_factor: Option<f64>

Device scale factor (default: 1)

§extra_http_headers: Option<HashMap<String, String>>

Extra HTTP headers to send with every request

§base_url: Option<String>

Base URL for relative navigation

§storage_state: Option<StorageState>

Storage state to populate the context (cookies, localStorage, sessionStorage). Can be an inline StorageState object or a file path string. Use builder methods storage_state() for inline or storage_state_path() for file path.

§storage_state_path: Option<String>

Storage state file path (alternative to inline storage_state). This is handled by the builder and converted to storage_state during serialization.

§args: Option<Vec<String>>

Additional arguments to pass to browser instance

§channel: Option<String>

Browser distribution channel (e.g., “chrome”, “msedge”)

§chromium_sandbox: Option<bool>

Enable Chromium sandboxing (default: false on Linux)

§devtools: Option<bool>

Auto-open DevTools (deprecated, default: false)

§downloads_path: Option<String>

Directory to save downloads

§executable_path: Option<String>

Path to custom browser executable

§firefox_user_prefs: Option<HashMap<String, Value>>

Firefox user preferences (Firefox only)

§headless: Option<bool>

Run in headless mode (default: true unless devtools=true)

§ignore_default_args: Option<IgnoreDefaultArgs>

Filter or disable default browser arguments. When true, Playwright does not pass its own default args. When an array, filters out the given default arguments.

See: https://playwright.dev/docs/api/class-browsertype#browser-type-launch-persistent-context

§slow_mo: Option<f64>

Slow down operations by N milliseconds

§timeout: Option<f64>

Timeout for browser launch in milliseconds

§traces_dir: Option<String>

Directory to save traces

§strict_selectors: Option<bool>

Check if strict selectors mode is enabled

§reduced_motion: Option<String>

Emulates ‘prefers-reduced-motion’ media feature

§forced_colors: Option<String>

Emulates ‘forced-colors’ media feature

§service_workers: Option<String>

Whether to allow sites to register Service workers

§record_har: Option<RecordHar>

Options for recording HAR

§record_video: Option<RecordVideo>

Options for recording video

Implementations§

Source§

impl BrowserContextOptions

Source

pub fn builder() -> BrowserContextOptionsBuilder

Creates a new builder for BrowserContextOptions

Trait Implementations§

Source§

impl Clone for BrowserContextOptions

Source§

fn clone(&self) -> BrowserContextOptions

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for BrowserContextOptions

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for BrowserContextOptions

Source§

fn default() -> BrowserContextOptions

Returns the “default value” for a type. Read more
Source§

impl Serialize for BrowserContextOptions

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more