Browser
浏览器是通过 browserType.launch() 创建的。使用 Browser 创建 Page 的示例:
🌐 A Browser is created via browserType.launch(). An example of using a Browser to create a Page:
const { firefox } = require('playwright'); // Or 'chromium' or 'webkit'.
(async () => {
const browser = await firefox.launch();
const page = await browser.newPage();
await page.goto('https://example.com');
await browser.close();
})();
方法
🌐 Methods
browserType
Added in: v1.23获取浏览器所属的浏览器类型(chromium、firefox 或 webkit)。
🌐 Get the browser type (chromium, firefox or webkit) that the browser belongs to.
用法
browser.browserType();
返回
close
Added before v1.9如果这个浏览器是通过 browserType.launch() 获取的,会关闭浏览器及其所有页面(如果有打开的话)。
🌐 In case this browser is obtained using browserType.launch(), closes the browser and all of its pages (if any were opened).
如果连接到此浏览器,则清除属于此浏览器的所有创建的上下文并断开与浏览器服务器的连接。
🌐 In case this browser is connected to, clears all created contexts belonging to this browser and disconnects from the browser server.
这类似于强制退出浏览器。要优雅地关闭页面并确保你收到页面关闭事件,请在调用 browser.close() 之前,对你之前使用 browser.newContext() 明确创建的任何 BrowserContext 实例调用 browserContext.close() 。
🌐 This is similar to force-quitting the browser. To close pages gracefully and ensure you receive page close events, call browserContext.close() on any BrowserContext instances you explicitly created earlier using browser.newContext() before calling browser.close().
【Browser】对象本身已被认为是已释放状态,不能再使用。
🌐 The Browser object itself is considered to be disposed and cannot be used anymore.
用法
await browser.close();
await browser.close(options);
参数
返回
contexts
Added before v1.9返回所有打开的浏览器上下文的数组。在新创建的浏览器中,这将返回零个浏览器上下文。
🌐 Returns an array of all open browser contexts. In a newly created browser, this will return zero browser contexts.
用法
const browser = await pw.webkit.launch();
console.log(browser.contexts().length); // prints `0`
const context = await browser.newContext();
console.log(browser.contexts().length); // prints `1`
返回
isConnected
Added before v1.9表示浏览器已连接。
🌐 Indicates that the browser is connected.
用法
browser.isConnected();
返回
newBrowserCDPSession
Added in: v1.11CDP 会话仅支持基于 Chromium 的浏览器。
🌐 CDP Sessions are only supported on Chromium-based browsers.
返回新创建的浏览器会话。
🌐 Returns the newly created browser session.
用法
await browser.newBrowserCDPSession();
返回
newContext
Added before v1.9创建一个新的浏览器上下文。它不会与其他浏览器上下文共享 cookies 或缓存。
🌐 Creates a new browser context. It won't share cookies/cache with other browser contexts.
如果直接使用此方法创建 BrowserContext,最佳做法是在代码使用完成 BrowserContext 后,并在调用 browser.close() 之前,显式关闭返回的上下文,通过 browserContext.close() 实现。这样可以确保 context 被优雅地关闭,并且任何生成的文件——例如 HAR 文件和视频——都能完全刷新并保存。
🌐 If directly using this method to create BrowserContexts, it is best practice to explicitly close the returned context via browserContext.close() when your code is done with the BrowserContext, and before calling browser.close(). This will ensure the context is closed gracefully and any artifacts—like HARs and videos—are fully flushed and saved.
用法
(async () => {
const browser = await playwright.firefox.launch(); // Or 'chromium' or 'webkit'.
// Create a new incognito browser context.
const context = await browser.newContext();
// Create a new page in a pristine context.
const page = await context.newPage();
await page.goto('https://example.com');
// Gracefully close up everything
await context.close();
await browser.close();
})();
参数
optionsObject (optional)-
acceptDownloadsboolean (optional)#是否自动下载所有附件。默认值为
true,表示接受所有下载。 -
在使用 page.goto()、page.route()、page.waitForURL()、page.waitForRequest() 或 page.waitForResponse() 时,会通过使用
URL()构造函数构建相应的 URL 来考虑基础 URL。默认情况下未设置。示例:- baseURL:
http://localhost:3000,然后导航到/bar.html会得到http://localhost:3000/bar.html - baseURL:
http://localhost:3000/foo/,然后导航到./bar.html会得到http://localhost:3000/foo/bar.html - baseURL:
http://localhost:3000/foo(不带末尾斜杠),然后导航到./bar.html会得到http://localhost:3000/bar.html
- baseURL:
-
切换是否绕过页面的内容安全策略。默认值为
false。 -
clientCertificatesArray<Object> (optional) Added in: 1.46#-
originstring证书有效的确切来源。来源包括
https协议、主机名以及可选的端口。 -
certPathstring (optional)PEM 格式的证书文件路径。
-
certBuffer (optional)PEM 格式的证书的直接值。
-
keyPathstring (optional)PEM 格式的私钥文件路径。
-
keyBuffer (optional)PEM 格式的私钥的直接值。
-
pfxPathstring (optional)PFX 或 PKCS12 编码的私钥和证书链的路径。
-
pfxBuffer (optional)PFX 或 PKCS12 编码的私钥和证书链的直接值。
-
passphrasestring (optional)私钥的密码(PEM 或 PFX)。
TLS 客户端身份验证允许服务器请求客户端证书并对其进行验证。
详情
要使用的一组客户端证书。每个证书对象必须同时具有
certPath和keyPath,或者单独具有pfxPath,或它们对应的直接值等效项(cert和key,或pfx)。如果证书是加密的,则可选择提供passphrase属性。origin属性应提供与证书有效的请求来源完全匹配的值。客户端证书认证仅在提供至少一个客户端证书时才有效。如果你想拒绝服务器发送的所有客户端证书,你需要提供一个
origin与你计划访问的任何域名都不匹配的客户端证书。note在 macOS 上使用 WebKit 时,访问
localhost不会使用客户端证书。你可以通过将localhost替换为local.playwright来使其正常工作。 -
-
colorSchemenull | "light" | "dark" | "no-preference" (optional)#模拟 prefers-colors-scheme 媒体特性,支持的值为
'light'和'dark'。更多详情请参见 page.emulateMedia()。传入null可将模拟重置为系统默认值。默认值为'light'。 -
contrastnull | "no-preference" | "more" (optional)#模拟
'prefers-contrast'媒体特性,支持的值为'no-preference'、'more'。更多详情请参见 page.emulateMedia()。传递null会将模拟重置为系统默认值。默认为'no-preference'。 -
deviceScaleFactornumber (optional)#指定设备缩放因子(可以理解为 DPR)。默认值为
1。了解有关使用设备缩放因子模拟设备的更多信息。 -
extraHTTPHeadersObject<string, string> (optional)#一个包含附加 HTTP 头的对象,这些头将随每个请求发送。默认为无。
-
forcedColorsnull | "active" | "none" (optional)#模拟
'forced-colors'媒体特性,支持的值为'active'、'none'。更多详情请参见 page.emulateMedia()。传递null会将模拟重置为系统默认值。默认为'none'。 -
指定视口是否支持触摸事件。默认值为 false。了解更多关于 移动模拟 的信息。
-
httpCredentialsObject (optional)#-
usernamestring -
passwordstring -
originstring (optional)限制在特定来源 (scheme://host:port) 上发送 http 凭据。
-
send"unauthorized" | "always" (optional)此选项仅适用于从对应的 APIRequestContext 发送的请求,并不影响从浏览器发送的请求。
'always'-Authorization头信息会随每个 API 请求发送基本认证凭据。'unauthorized- 凭据仅在收到带有WWW-Authenticate头的 401(未授权)响应时发送。默认为'unauthorized'。
HTTP 认证 的凭据。如果未指定来源,用户名和密码将在收到未授权响应时发送到任何服务器。
-
-
ignoreHTTPSErrorsboolean (optional)#发送网络请求时是否忽略 HTTPS 错误。默认值为
false。 -
是否考虑
meta viewport标签并启用触摸事件。isMobile 是 device 的一部分,因此你实际上不需要手动设置它。默认值为false,并且在 Firefox 中不受支持。了解更多关于 移动端模拟 的信息。 -
javaScriptEnabledboolean (optional)#是否在此环境中启用 JavaScript。默认为
true。了解更多关于禁用 JavaScript的信息。 -
指定用户区域设置,例如
en-GB、de-DE等。区域设置会影响navigator.language的值、Accept-Language请求头的值以及数字和日期的格式规则。默认为系统默认区域设置。有关模拟的更多信息,请参阅我们的 模拟指南。 -
已弃用
日志记录器接收到的日志不完整。请改用追踪。
用于 Playwright 日志记录的日志器接收器。
-
是否模拟网络离线。默认为
false。了解更多关于 网络模拟 的信息。 -
permissionsArray<string> (optional)#在此上下文中授予所有页面的权限列表。有关更多详细信息,请参阅 browserContext.grantPermissions()。默认情况下无权限。
-
-
serverstring用于所有请求的代理。支持 HTTP 和 SOCKS 代理,例如
http://myproxy.com:3128或socks5://myproxy.com:3128。简写myproxy.com:3128被视为 HTTP 代理。 -
bypassstring (optional)可选的以逗号分隔的域名,用于绕过代理,例如
".com, chromium.org, .domain.com"。 -
usernamestring (optional)如果 HTTP 代理需要身份验证,则使用可选的用户名。
-
passwordstring (optional)如果 HTTP 代理需要身份验证,则使用可选密码。
在此上下文中使用的网络代理设置。默认情况下为无。
-
-
-
omitContentboolean (optional)可选设置,用于控制是否从 HAR 中省略请求内容。默认值为
false。已弃用,请改用content策略。 -
content"omit" | "embed" | "attach" (optional)可选设置,用于控制资源内容管理。如果指定
omit,内容不会被保存。如果指定attach,资源将作为单独的文件或 ZIP 压缩包中的条目保存。如果指定embed,内容将根据 HAR 规范内联存储在 HAR 文件中。默认情况下,对于.zip输出文件为attach,对于所有其他文件扩展名为embed。 -
pathstring要写入 HAR 文件的文件系统路径。如果文件名以
.zip结尾,则默认使用content: 'attach'。 -
mode"full" | "minimal" (optional)当设置为
minimal时,仅记录从 HAR 路由所需的信息。这会省略在从 HAR 回放时不使用的大小、时间、页面、Cookies、安全性以及其他类型的 HAR 信息。默认值为full。 -
urlFilterstring | RegExp (optional)用于过滤存储在 HAR 中的请求的全局或正则表达式模式。当通过上下文选项提供了 baseURL 并且传入的 URL 是路径时,它会通过
new URL()构造函数进行合并。默认情况下没有。
启用对所有页面的 HAR 记录,并保存到
recordHar.path文件中。如果未指定,则不会记录 HAR。请确保在保存 HAR 前等待 browserContext.close()。 -
-
recordVideoObject (optional)#-
dirstring放置视频的目录路径。
-
sizeObject (optional)录制视频的可选尺寸。如果未指定,大小将等于
viewport并缩小以适应 800x800。如果未显式配置viewport,视频大小默认为 800x450。每页的实际画面如有必要将缩小以适应指定尺寸。
启用将所有页面的视频录制到
recordVideo.dir目录。如果未指定,则不会录制视频。请确保等待 browserContext.close() 以便保存视频。 -
-
reducedMotionnull | "reduce" | "no-preference" (optional)#模拟
'prefers-reduced-motion'媒体特性,支持的值为'reduce'、'no-preference'。更多详情请参见 page.emulateMedia()。传递null会将模拟重置为系统默认值。默认为'no-preference'。 -
通过
window.screen模拟网页内可用的一致窗口屏幕大小。仅在设置了 viewport 时使用。 -
serviceWorkers"allow" | "block" (optional)#是否允许网站注册服务工作进程。默认值为
'allow'。'allow':服务工作者 可以被注册。'block':Playwright 将阻止所有服务工作进程的注册。
-
storageStatestring | Object (optional)#-
-
namestring -
valuestring -
domainstring域和路径是必填项。若要使 cookie 适用于所有子域,请在域名前加一个点,如:.example.com
-
pathstring域名和路径为必填项
-
expiresnumberUnix 时间以秒为单位。
-
httpOnlyboolean -
secureboolean -
sameSite“严格” | “宽松” | “无”同一站点标志
为上下文设置的 Cookie
-
了解更多关于存储状态和身份验证的信息。
使用给定的存储状态填充上下文。此选项可用于使用通过 browserContext.storageState() 获取的登录信息初始化上下文。
-
-
strictSelectorsboolean (optional)#如果设置为 true,则为此上下文启用严格选择器模式。在严格选择器模式下,对选择器进行的所有操作,如果操作意图是单个目标 DOM 元素,当有多个元素匹配选择器时将会抛出错误。此选项不会影响任何定位器(Locator)API(定位器始终是严格的)。默认值为
false。请参阅 Locator 了解有关严格模式的更多信息。 -
更改上下文的时区。有关支持的时区 ID 列表,请参阅 ICU 的 metaZones.txt。默认使用系统时区。
-
在此上下文中使用的特定用户代理。
-
:::警告[已弃用] 请使用[recordVideo](/api/class-browser.mdx#browser-new-context-option-record-video)。 :::
-
:::警告[已弃用] 请使用[recordVideo](/api/class-browser.mdx#browser-new-context-option-record-video)。 :::
-
viewportnull | Object (optional)#为每个页面模拟一致的视口。默认视口为 1280x720。使用
null可禁用一致视口模拟。了解更多关于视口模拟的信息。notenull值选择不使用默认预设,使视口依赖于操作系统定义的主机窗口大小。这会导致测试执行结果不确定。
-
返回
newPage
Added before v1.9在新的浏览器上下文中创建一个新页面。关闭此页面也会关闭该上下文。
🌐 Creates a new page in a new browser context. Closing this page will close the context as well.
这是一个便捷的 API,只应在单页场景和简短片段中使用。生产代码和测试框架应显式地创建 browser.newContext(),然后再创建 browserContext.newPage(),以便精确控制它们的生命周期。
🌐 This is a convenience API that should only be used for the single-page scenarios and short snippets. Production code and testing frameworks should explicitly create browser.newContext() followed by the browserContext.newPage() to control their exact life times.
用法
await browser.newPage();
await browser.newPage(options);
参数
optionsObject (optional)-
acceptDownloadsboolean (optional)#是否自动下载所有附件。默认值为
true,表示接受所有下载。 -
在使用 page.goto()、page.route()、page.waitForURL()、page.waitForRequest() 或 page.waitForResponse() 时,会通过使用
URL()构造函数构建相应的 URL 来考虑基础 URL。默认情况下未设置。示例:- baseURL:
http://localhost:3000,然后导航到/bar.html会得到http://localhost:3000/bar.html - baseURL:
http://localhost:3000/foo/,然后导航到./bar.html会得到http://localhost:3000/foo/bar.html - baseURL:
http://localhost:3000/foo(不带末尾斜杠),然后导航到./bar.html会得到http://localhost:3000/bar.html
- baseURL:
-
切换是否绕过页面的内容安全策略。默认值为
false。 -
clientCertificatesArray<Object> (optional) Added in: 1.46#-
originstring证书有效的确切来源。来源包括
https协议、主机名以及可选的端口。 -
certPathstring (optional)PEM 格式的证书文件路径。
-
certBuffer (optional)PEM 格式的证书的直接值。
-
keyPathstring (optional)PEM 格式的私钥文件路径。
-
keyBuffer (optional)PEM 格式的私钥的直接值。
-
pfxPathstring (optional)PFX 或 PKCS12 编码的私钥和证书链的路径。
-
pfxBuffer (optional)PFX 或 PKCS12 编码的私钥和证书链的直接值。
-
passphrasestring (optional)私钥的密码(PEM 或 PFX)。
TLS 客户端身份验证允许服务器请求客户端证书并对其进行验证。
详情
要使用的一组客户端证书。每个证书对象必须同时具有
certPath和keyPath,或者单独具有pfxPath,或它们对应的直接值等效项(cert和key,或pfx)。如果证书是加密的,则可选择提供passphrase属性。origin属性应提供与证书有效的请求来源完全匹配的值。客户端证书认证仅在提供至少一个客户端证书时才有效。如果你想拒绝服务器发送的所有客户端证书,你需要提供一个
origin与你计划访问的任何域名都不匹配的客户端证书。note在 macOS 上使用 WebKit 时,访问
localhost不会使用客户端证书。你可以通过将localhost替换为local.playwright来使其正常工作。 -
-
colorSchemenull | "light" | "dark" | "no-preference" (optional)#模拟 prefers-colors-scheme 媒体特性,支持的值为
'light'和'dark'。更多详情请参见 page.emulateMedia()。传入null可将模拟重置为系统默认值。默认值为'light'。 -
contrastnull | "no-preference" | "more" (optional)#模拟
'prefers-contrast'媒体特性,支持的值为'no-preference'、'more'。更多详情请参见 page.emulateMedia()。传递null会将模拟重置为系统默认值。默认为'no-preference'。 -
deviceScaleFactornumber (optional)#指定设备缩放因子(可以理解为 DPR)。默认值为
1。了解有关使用设备缩放因子模拟设备的更多信息。 -
extraHTTPHeadersObject<string, string> (optional)#一个包含附加 HTTP 头的对象,这些头将随每个请求发送。默认为无。
-
forcedColorsnull | "active" | "none" (optional)#模拟
'forced-colors'媒体特性,支持的值为'active'、'none'。更多详情请参见 page.emulateMedia()。传递null会将模拟重置为系统默认值。默认为'none'。 -
指定视口是否支持触摸事件。默认值为 false。了解更多关于 移动模拟 的信息。
-
httpCredentialsObject (optional)#-
usernamestring -
passwordstring -
originstring (optional)限制在特定来源 (scheme://host:port) 上发送 http 凭据。
-
send"unauthorized" | "always" (optional)此选项仅适用于从对应的 APIRequestContext 发送的请求,并不影响从浏览器发送的请求。
'always'-Authorization头信息会随每个 API 请求发送基本认证凭据。'unauthorized- 凭据仅在收到带有WWW-Authenticate头的 401(未授权)响应时发送。默认为'unauthorized'。
HTTP 认证 的凭据。如果未指定来源,用户名和密码将在收到未授权响应时发送到任何服务器。
-
-
ignoreHTTPSErrorsboolean (optional)#发送网络请求时是否忽略 HTTPS 错误。默认值为
false。 -
是否考虑
meta viewport标签并启用触摸事件。isMobile 是 device 的一部分,因此你实际上不需要手动设置它。默认值为false,并且在 Firefox 中不受支持。了解更多关于 移动端模拟 的信息。 -
javaScriptEnabledboolean (optional)#是否在此环境中启用 JavaScript。默认为
true。了解更多关于禁用 JavaScript的信息。 -
指定用户区域设置,例如
en-GB、de-DE等。区域设置会影响navigator.language的值、Accept-Language请求头的值以及数字和日期的格式规则。默认为系统默认区域设置。有关模拟的更多信息,请参阅我们的 模拟指南。 -
已弃用
日志记录器接收到的日志不完整。请改用追踪。
用于 Playwright 日志记录的日志器接收器。
-
是否模拟网络离线。默认为
false。了解更多关于 网络模拟 的信息。 -
permissionsArray<string> (optional)#在此上下文中授予所有页面的权限列表。有关更多详细信息,请参阅 browserContext.grantPermissions()。默认情况下无权限。
-
-
serverstring用于所有请求的代理。支持 HTTP 和 SOCKS 代理,例如
http://myproxy.com:3128或socks5://myproxy.com:3128。简写myproxy.com:3128被视为 HTTP 代理。 -
bypassstring (optional)可选的以逗号分隔的域名,用于绕过代理,例如
".com, chromium.org, .domain.com"。 -
usernamestring (optional)如果 HTTP 代理需要身份验证,则使用可选的用户名。
-
passwordstring (optional)如果 HTTP 代理需要身份验证,则使用可选密码。
在此上下文中使用的网络代理设置。默认情况下为无。
-
-
-
omitContentboolean (optional)可选设置,用于控制是否从 HAR 中省略请求内容。默认值为
false。已弃用,请改用content策略。 -
content"omit" | "embed" | "attach" (optional)可选设置,用于控制资源内容管理。如果指定
omit,内容不会被保存。如果指定attach,资源将作为单独的文件或 ZIP 压缩包中的条目保存。如果指定embed,内容将根据 HAR 规范内联存储在 HAR 文件中。默认情况下,对于.zip输出文件为attach,对于所有其他文件扩展名为embed。 -
pathstring要写入 HAR 文件的文件系统路径。如果文件名以
.zip结尾,则默认使用content: 'attach'。 -
mode"full" | "minimal" (optional)当设置为
minimal时,仅记录从 HAR 路由所需的信息。这会省略在从 HAR 回放时不使用的大小、时间、页面、Cookies、安全性以及其他类型的 HAR 信息。默认值为full。 -
urlFilterstring | RegExp (optional)用于过滤存储在 HAR 中的请求的全局或正则表达式模式。当通过上下文选项提供了 baseURL 并且传入的 URL 是路径时,它会通过
new URL()构造函数进行合并。默认情况下没有。
启用对所有页面的 HAR 记录,并保存到
recordHar.path文件中。如果未指定,则不会记录 HAR。请确保在保存 HAR 前等待 browserContext.close()。 -
-
recordVideoObject (optional)#-
dirstring放置视频的目录路径。
-
sizeObject (optional)录制视频的可选尺寸。如果未指定,大小将等于
viewport并缩小以适应 800x800。如果未显式配置viewport,视频大小默认为 800x450。每页的实际画面如有必要将缩小以适应指定尺寸。
启用将所有页面的视频录制到
recordVideo.dir目录。如果未指定,则不会录制视频。请确保等待 browserContext.close() 以便保存视频。 -
-
reducedMotionnull | "reduce" | "no-preference" (optional)#模拟
'prefers-reduced-motion'媒体特性,支持的值为'reduce'、'no-preference'。更多详情请参见 page.emulateMedia()。传递null会将模拟重置为系统默认值。默认为'no-preference'。 -
通过
window.screen模拟网页内可用的固定窗口屏幕大小。仅在设置了 viewport 时使用。 -
serviceWorkers"allow" | "block" (optional)#是否允许网站注册服务工作进程。默认值为
'allow'。'allow':服务工作者 可以被注册。'block':Playwright 将阻止所有服务工作进程的注册。
-
storageStatestring | Object (optional)#-
-
namestring -
valuestring -
domainstring域和路径是必填项。若要使 cookie 适用于所有子域,请在域名前加一个点,如:.example.com
-
pathstring域名和路径为必填项
-
expiresnumberUnix 时间以秒为单位。
-
httpOnlyboolean -
secureboolean -
sameSite“严格” | “宽松” | “无”同一站点标志
为上下文设置的 Cookie
-
了解更多关于存储状态和身份验证的信息。
使用给定的存储状态填充上下文。此选项可用于使用通过 browserContext.storageState() 获取的登录信息初始化上下文。
-
-
strictSelectorsboolean (optional)#如果设置为 true,则为此上下文启用严格选择器模式。在严格选择器模式下,对选择器进行的所有操作,如果操作意图是单个目标 DOM 元素,当有多个元素匹配选择器时将会抛出错误。此选项不会影响任何定位器(Locator)API(定位器始终是严格的)。默认值为
false。请参阅 Locator 了解有关严格模式的更多信息。 -
更改上下文的时区。有关支持的时区 ID 列表,请参阅 ICU 的 metaZones.txt。默认使用系统时区。
-
在此上下文中使用的特定用户代理。
-
已弃用
请改用 recordVideo。
-
已弃用
请改用 recordVideo。
-
viewportnull | Object (optional)#为每个页面模拟一致的视口。默认视口为 1280x720。使用
null可禁用一致视口模拟。了解更多关于视口模拟的信息。notenull值选择不使用默认预设,使视口依赖于操作系统定义的主机窗口大小。这会导致测试执行结果不确定。
-
返回
removeAllListeners
Added in: v1.47移除指定类型的所有监听器(如果未指定类型,则移除所有注册的监听器)。允许等待异步监听器完成,或忽略这些监听器随后产生的错误。
🌐 Removes all the listeners of the given type (or all registered listeners if no type given). Allows to wait for async listeners to complete or to ignore subsequent errors from these listeners.
用法
await browser.removeAllListeners();
await browser.removeAllListeners(type, options);
参数
typestring (optional)#optionsObject (optional)-
behavior"wait" | "ignoreErrors" | "default" (optional)#指定是否等待已经运行的监听器以及如果它们抛出错误该怎么做: =
'default'- 不要等待当前监听器的调用(如果有)完成,如果监听器抛出异常,可能会导致未处理的错误'wait'- 等待当前监听器调用(如果有)完成'ignoreErrors'- 不要等待当前监听器的调用(如果有的话)完成,移除后监听器抛出的所有错误都会被静默捕获
-
返回
startTracing
Added in: v1.11此 API 控制 Chromium Tracing,这是一个低级别的特定于 Chromium 的调试工具。控制 Playwright Tracing 的 API 可以在 这里 找到。
🌐 This API controls Chromium Tracing which is a low-level chromium-specific debugging tool. API to control Playwright Tracing could be found here.
你可以使用 browser.startTracing() 和 browser.stopTracing() 来创建一个可在 Chrome 开发者工具性能面板中打开的跟踪文件。
🌐 You can use browser.startTracing() and browser.stopTracing() to create a trace file that can be opened in Chrome DevTools performance panel.
用法
await browser.startTracing(page, { path: 'trace.json' });
await page.goto('https://www.google.com');
await browser.stopTracing();
参数
-
可选(如果指定),跟踪包括给定页面的屏幕截图。
-
optionsObject (optional)
返回
stopTracing
Added in: v1.11此 API 控制 Chromium Tracing,这是一个低级别的特定于 Chromium 的调试工具。控制 Playwright Tracing 的 API 可以在 这里 找到。
🌐 This API controls Chromium Tracing which is a low-level chromium-specific debugging tool. API to control Playwright Tracing could be found here.
返回带有跟踪数据的缓冲区。
🌐 Returns the buffer with trace data.
用法
await browser.stopTracing();
返回
version
Added before v1.9返回浏览器版本。
🌐 Returns the browser version.
用法
browser.version();
返回
事件
🌐 Events
on('disconnected')
Added before v1.9当浏览器与浏览器应用断开连接时触发。这可能由以下原因之一导致:
🌐 Emitted when Browser gets disconnected from the browser application. This might happen because of one of the following:
- 浏览器应用已关闭或崩溃。
- 已调用 browser.close() 方法。
用法
browser.on('disconnected', data => {});
事件数据