跳到主要内容

BrowserType

BrowserType 提供了启动特定浏览器实例或连接到现有实例的方法。以下是使用 Playwright 驱动自动化的典型示例。

const { chromium } = require('playwright');  // Or 'firefox' or 'webkit'.

(async () => {
const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto('https://example.com');
// other actions...
await browser.close();
})();

方法

connect

在 v1.9 之前添加 browserType.connect

此方法将 Playwright 连接到通过 Node.js 中的 BrowserType.launchServer 创建的现有浏览器实例。

注意

连接的 Playwright 实例的主版本和次版本需要与启动浏览器的 Playwright 版本匹配 (1.2.3 → 与 1.2.x 兼容)。

用法

await browserType.connect(wsEndpoint);
await browserType.connect(wsEndpoint, options);

参数

  • wsEndpoint 字符串添加于: v1.10#

    要连接的 Playwright 浏览器 WebSocket 端点。您可以通过 BrowserServer.wsEndpoint 获取此端点。

  • options 对象 (可选)

    • exposeNetwork 字符串 (可选)添加于: v1.37#

      此选项将连接客户端上可用的网络暴露给被连接的浏览器。由逗号分隔的规则列表组成。

      可用规则

      1. 主机名模式,例如:example.com*.org:99x.*.y.com*foo.org
      2. IP 字面量,例如:127.0.0.10.0.0.0:99[::1][0:0::1]:99
      3. <loopback> 匹配本地回环接口:localhost*.localhost127.0.0.1[::1]

      一些常见示例

      1. 使用 "*" 暴露所有网络。
      2. 使用 "<loopback>" 暴露 localhost 网络。
      3. 使用 "*.test.internal-domain,*.staging.internal-domain,<loopback>" 暴露测试/预发布环境和 localhost。
    • headers 对象<字符串, 字符串> (可选)添加于: v1.11#

      随 WebSocket 连接请求发送的附加 HTTP 头。可选。

    • logger Logger (可选)添加于: v1.14#

      Playwright 日志的日志接收器。可选。

    • slowMo 数字 (可选)添加于: v1.10#

      将 Playwright 操作放慢指定的毫秒数。对于查看正在发生的事情很有用。默认为 0。

    • timeout 数字 (可选)添加于: v1.10#

      等待连接建立的最大毫秒数。默认为 0(无超时)。

返回值


connectOverCDP

添加于: v1.9 browserType.connectOverCDP

此方法使用 Chrome DevTools Protocol 将 Playwright 连接到现有浏览器实例。

可以通过 browser.contexts() 访问默认浏览器上下文。

注意

仅支持通过 Chrome DevTools Protocol 连接到基于 Chromium 的浏览器。

注意

相比于通过 browserType.connect() 进行的 Playwright 协议连接,此连接保真度显著较低。如果您遇到问题或尝试使用高级功能,您可能希望使用 browserType.connect()

用法

const browser = await playwright.chromium.connectOverCDP('http://localhost:9222');
const defaultContext = browser.contexts()[0];
const page = defaultContext.pages()[0];

参数

  • endpointURL 字符串添加于: v1.11#

    要连接的 CDP WebSocket 端点或 HTTP URL。例如 http://localhost:9222/ws://127.0.0.1:9222/devtools/browser/387adf4c-243f-4051-a181-46798f4a46f4

  • options 对象 (可选)

    • endpointURL 字符串 (可选)添加于: v1.14#

      已弃用,请改用第一个参数。可选。

    • headers 对象<字符串, 字符串> (可选)添加于: v1.11#

      随连接请求发送的附加 HTTP 头。可选。

    • logger Logger (可选)添加于: v1.14#

      Playwright 日志的日志接收器。可选。

    • slowMo 数字 (可选)添加于: v1.11#

      将 Playwright 操作放慢指定的毫秒数。对于查看正在发生的事情很有用。默认为 0。

    • timeout 数字 (可选)添加于: v1.11#

      等待连接建立的最大毫秒数。默认为 30000(30 秒)。传入 0 可禁用超时。

返回值


executablePath

在 v1.9 之前添加 browserType.executablePath

Playwright 期望找到捆绑的浏览器可执行文件的路径。

用法

browserType.executablePath();

返回值


launch

在 v1.9 之前添加 browserType.launch

返回浏览器实例。

用法

您可以使用 ignoreDefaultArgs 选项过滤掉默认参数中的 --mute-audio

const browser = await chromium.launch({  // Or 'firefox' or 'webkit'.
ignoreDefaultArgs: ['--mute-audio']
});

仅限 Chromium Playwright 也可以用于控制 Google Chrome 或 Microsoft Edge 浏览器,但与 Playwright 捆绑的 Chromium 版本一起使用效果最佳。不保证它能与其他版本一起使用。使用 executablePath 选项时务必小心。

如果倾向于使用 Google Chrome(而非 Chromium),建议使用 Chrome CanaryDev Channel 构建版本。

像 Google Chrome 和 Microsoft Edge 这样的原生浏览器适用于需要专有媒体编解码器进行视频播放的测试。有关 Chromium 和 Chrome 之间其他差异,请参阅 此文章本文 介绍了针对 Linux 用户的一些差异。

参数

  • options 对象 (可选)
    • args 字符串数组 (可选)#

      警告

      使用自定义浏览器参数有风险,因为其中一些可能会破坏 Playwright 的功能。

      要传递给浏览器实例的附加参数。Chromium 标志列表可以在 这里 找到。

    • channel 字符串 (可选)#

      浏览器分发渠道。

      使用 "chromium" 启用 新的无头模式

      使用 "chrome", "chrome-beta", "chrome-dev", "chrome-canary", "msedge", "msedge-beta", "msedge-dev", 或 "msedge-canary" 使用 品牌化的 Google Chrome 和 Microsoft Edge

    • chromiumSandbox 布尔值 (可选)#

      启用 Chromium 沙盒。默认为 false

    • devtools 布尔值 (可选)#

      已弃用

      请改用 调试工具

      仅限 Chromium 是否为每个标签页自动打开开发者工具面板。如果此选项为 true,则 headless 选项将设置为 false

    • downloadsPath 字符串 (可选)#

      如果指定,接受的下载文件将下载到此目录。否则,将创建临时目录,并在浏览器关闭时删除。无论哪种情况,当创建下载文件的浏览器上下文关闭时,下载文件都会被删除。

    • env 对象<字符串, 字符串 | 数字 | 布尔值> (可选)#

      指定对浏览器可见的环境变量。默认为 process.env

    • executablePath 字符串 (可选)#

      要运行的浏览器可执行文件路径,而非捆绑的可执行文件。如果 executablePath 是相对路径,则相对于当前工作目录解析。请注意,Playwright 仅适用于捆绑的 Chromium、Firefox 或 WebKit,使用其他版本风险自负。

    • firefoxUserPrefs 对象<字符串, 字符串 | 数字 | 布尔值> (可选)#

      Firefox 用户首选项。有关 Firefox 用户首选项的更多信息,请参阅 about:config

    • handleSIGHUP 布尔值 (可选)#

      在接收到 SIGHUP 信号时关闭浏览器进程。默认为 true

    • handleSIGINT 布尔值 (可选)#

      在接收到 Ctrl-C 信号时关闭浏览器进程。默认为 true

    • handleSIGTERM 布尔值 (可选)#

      在接收到 SIGTERM 信号时关闭浏览器进程。默认为 true

    • headless 布尔值 (可选)#

      是否以无头模式运行浏览器。有关 ChromiumFirefox 的更多详细信息。默认为 true,除非 devtools 选项为 true

    • ignoreDefaultArgs 布尔值 | 字符串数组 (可选)#

      如果为 true,Playwright 将不传递其自身的配置参数,仅使用 args 中的参数。如果给定数组,则过滤掉给定的默认参数。危险选项;请谨慎使用。默认为 false

    • logger Logger (可选)#

      Playwright 日志的日志接收器。

    • proxy 对象 (可选)#

      • server 字符串

        用于所有请求的代理。支持 HTTP 和 SOCKS 代理,例如 http://myproxy.com:3128socks5://myproxy.com:3128。短形式 myproxy.com:3128 被视为 HTTP 代理。

      • bypass 字符串 (可选)

        可选的逗号分隔的绕过代理的域,例如 ".com, chromium.org, .domain.com"

      • username 字符串 (可选)

        如果 HTTP 代理需要身份验证,可选的用户名。

      • password 字符串 (可选)

        如果 HTTP 代理需要身份验证,可选的密码。

      网络代理设置。

    • slowMo 数字 (可选)#

      将 Playwright 操作放慢指定的毫秒数。对于查看正在发生的事情很有用。

    • timeout 数字 (可选)#

      等待浏览器实例启动的最大毫秒数。默认为 30000(30 秒)。传入 0 可禁用超时。

    • tracesDir 字符串 (可选)#

      如果指定,跟踪文件将保存到此目录。

返回值


launchPersistentContext

在 v1.9 之前添加 browserType.launchPersistentContext

返回持久化浏览器上下文实例。

启动使用位于 userDataDir 的持久化存储的浏览器,并返回唯一的上下文。关闭此上下文将自动关闭浏览器。

用法

await browserType.launchPersistentContext(userDataDir);
await browserType.launchPersistentContext(userDataDir, options);

参数

  • userDataDir 字符串#

    用户数据目录路径,用于存储浏览器会话数据,例如 cookies 和本地存储。传入空字符串将创建临时目录。

    有关 ChromiumFirefox 的更多详细信息。Chromium 的用户数据目录是 chrome://version 中看到的“Profile Path”的 父目录

    请注意,浏览器不允许使用相同的用户数据目录启动多个实例。

  • options 对象 (可选)

    • acceptDownloads 布尔值 (可选)#

      是否自动下载所有附件。默认为 true,表示接受所有下载。

    • args 字符串数组 (可选)#

      警告

      使用自定义浏览器参数有风险,因为其中一些可能会破坏 Playwright 的功能。

      要传递给浏览器实例的附加参数。Chromium 标志列表可以在 这里 找到。

    • baseURL 字符串 (可选)#

      在使用 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
    • bypassCSP 布尔值 (可选)#

      切换是否绕过页面的内容安全策略 (Content-Security-Policy)。默认为 false

    • channel 字符串 (可选)#

      浏览器分发渠道。

      使用 "chromium" 启用 新的无头模式

      使用 "chrome", "chrome-beta", "chrome-dev", "chrome-canary", "msedge", "msedge-beta", "msedge-dev", 或 "msedge-canary" 使用 品牌化的 Google Chrome 和 Microsoft Edge

    • chromiumSandbox 布尔值 (可选)#

      启用 Chromium 沙盒。默认为 false

    • clientCertificates 对象数组 (可选)添加于: 1.46#

      • origin 字符串

        证书有效的精确源。源包括 https 协议、主机名以及可选的端口。

      • certPath 字符串 (可选)

        PEM 格式证书文件路径。

      • cert Buffer (可选)

        PEM 格式证书的直接值。

      • keyPath 字符串 (可选)

        PEM 格式私钥文件路径。

      • key Buffer (可选)

        PEM 格式私钥的直接值。

      • pfxPath 字符串 (可选)

        PFX 或 PKCS12 编码的私钥和证书链文件路径。

      • pfx Buffer (可选)

        PFX 或 PKCS12 编码的私钥和证书链的直接值。

      • passphrase 字符串 (可选)

        私钥(PEM 或 PFX)的密码。

      TLS 客户端认证允许服务器请求客户端证书并验证。

      详情

      要使用的客户端证书数组。每个证书对象必须同时包含 certPathkeyPath,或单个 pfxPath,或其对应的直接值(certkey,或 pfx)。如果证书已加密,可选地应提供 passphrase 属性。origin 属性应提供与证书有效请求源的精确匹配。

      注意

      在 macOS 上使用 WebKit 时,访问 localhost 将不会加载客户端证书。您可以通过将 localhost 替换为 local.playwright 来使其工作。

    • colorScheme null | "light" | "dark" | "no-preference" (可选)#

      模拟 prefers-colors-scheme 媒体特性,支持的值为 'light''dark'。有关更多详细信息,请参阅 page.emulateMedia()。传入 null 会将模拟重置为系统默认值。默认为 'light'

    • contrast null | "no-preference" | "more" (可选)#

      模拟 'prefers-contrast' 媒体特性,支持的值为 'no-preference', 'more'。有关更多详细信息,请参阅 page.emulateMedia()。传入 null 会将模拟重置为系统默认值。默认为 'no-preference'

    • deviceScaleFactor 数字 (可选)#

      指定设备缩放因子(可以理解为 dpr)。默认为 1。了解更多关于使用设备缩放因子模拟设备的信息。

    • devtools 布尔值 (可选)#

      已弃用

      请改用 调试工具

      仅限 Chromium 是否为每个标签页自动打开开发者工具面板。如果此选项为 true,则 headless 选项将设置为 false

    • downloadsPath 字符串 (可选)#

      如果指定,接受的下载文件将下载到此目录。否则,将创建临时目录,并在浏览器关闭时删除。无论哪种情况,当创建下载文件的浏览器上下文关闭时,下载文件都会被删除。

    • env 对象<字符串, 字符串 | 数字 | 布尔值> (可选)#

      指定对浏览器可见的环境变量。默认为 process.env

    • executablePath 字符串 (可选)#

      要运行的浏览器可执行文件路径,而非捆绑的可执行文件。如果 executablePath 是相对路径,则相对于当前工作目录解析。请注意,Playwright 仅适用于捆绑的 Chromium、Firefox 或 WebKit,使用其他版本风险自负。

    • extraHTTPHeaders 对象<字符串, 字符串> (可选)#

      一个包含额外 HTTP 头部(将随每个请求发送)的对象。默认值为 none(无)。

    • firefoxUserPrefs 对象<字符串, 字符串 | 数字 | 布尔值> (可选)添加于: v1.40#

      Firefox 用户首选项。有关 Firefox 用户首选项的更多信息,请参阅 about:config

    • forcedColors null | "active" | "none" (可选)#

      模拟 'forced-colors' 媒体特性,支持的值为 'active''none'。请参阅 page.emulateMedia() 了解更多详情。传递 null 将仿真重置为系统默认值。默认值为 'none'

    • geolocation 对象 (可选)#

      • latitude 数字

        介于 -90 和 90 之间的纬度。

      • longitude 数字

        介于 -180 和 180 之间的经度。

      • accuracy 数字 (可选)

        非负精度值。默认值为 0

    • handleSIGHUP 布尔值 (可选)#

      在接收到 SIGHUP 信号时关闭浏览器进程。默认为 true

    • handleSIGINT 布尔值 (可选)#

      在接收到 Ctrl-C 信号时关闭浏览器进程。默认为 true

    • handleSIGTERM 布尔值 (可选)#

      在接收到 SIGTERM 信号时关闭浏览器进程。默认为 true

    • hasTouch 布尔值 (可选)#

      指定视口是否支持触摸事件。默认值为 false。了解有关移动设备模拟的更多信息。

    • headless 布尔值 (可选)#

      是否以无头模式运行浏览器。有关 ChromiumFirefox 的更多详细信息。默认为 true,除非 devtools 选项为 true

    • httpCredentials 对象 (可选)#

      • username 字符串

      • password 字符串

      • origin 字符串 (可选)

        限制在特定源 (scheme://host:port)).

      • send "unauthorized" | "always" (可选)

        此选项仅适用于从相应的 APIRequestContext 发出的请求,不影响从浏览器发出的请求。'always' — 包含基本认证凭据的 Authorization 头部将随每个 API 请求发送。'unauthorized — 凭据仅在收到包含 WWW-Authenticate 头部的 401(未授权)响应时发送。默认值为 'unauthorized'

      用于HTTP 认证的凭据。如果未指定源,则在收到未授权响应时,用户名和密码将发送到任何服务器。

    • ignoreDefaultArgs 布尔值 | 数组<字符串> (可选)#

      如果为 true,Playwright 不会传递自己的配置参数,只使用来自 args 的参数。如果给定数组,则过滤掉给定的默认参数。危险选项;请谨慎使用。默认值为 false

    • ignoreHTTPSErrors 布尔值 (可选)#

      发送网络请求时是否忽略 HTTPS 错误。默认值为 false

    • isMobile 布尔值 (可选)#

      是否考虑 meta viewport 标签并启用触摸事件。isMobile 是设备的一部分,因此您实际上不需要手动设置它。默认值为 false,并且在 Firefox 中不受支持。了解有关移动设备模拟的更多信息。

    • javaScriptEnabled 布尔值 (可选)#

      是否在此上下文中启用 JavaScript。默认值为 true。了解有关禁用 JavaScript的更多信息。

    • locale 字符串 (可选)#

      指定用户区域设置,例如 en-GBde-DE 等。区域设置将影响 navigator.language 值、Accept-Language 请求头值以及数字和日期格式规则。默认值为系统默认区域设置。在我们的仿真指南中了解有关仿真的更多信息。

    • logger Logger (可选)#

      Playwright 日志的日志接收器。

    • offline 布尔值 (可选)#

      是否模拟网络离线。默认值为 false。了解有关网络仿真的更多信息。

    • permissions 数组<字符串> (可选)#

      要授予此上下文中所有页面的权限列表。请参阅 browserContext.grantPermissions() 了解更多详情。默认值为 none(无)。

    • proxy 对象 (可选)#

      • server 字符串

        用于所有请求的代理。支持 HTTP 和 SOCKS 代理,例如 http://myproxy.com:3128socks5://myproxy.com:3128。短形式 myproxy.com:3128 被视为 HTTP 代理。

      • bypass 字符串 (可选)

        可选的逗号分隔的绕过代理的域,例如 ".com, chromium.org, .domain.com"

      • username 字符串 (可选)

        如果 HTTP 代理需要身份验证,可选的用户名。

      • password 字符串 (可选)

        如果 HTTP 代理需要身份验证,可选的密码。

      网络代理设置。

    • recordHar 对象 (可选)#

      • omitContent 布尔值 (可选)

        可选设置,用于控制是否从 HAR 中省略请求内容。默认值为 false。已弃用,请改用 content 策略。

      • content "omit" | "embed" | "attach" (可选)

        可选设置,用于控制资源内容管理。如果指定为 omit,则内容不会持久化。如果指定为 attach,资源将持久化为单独的文件或 ZIP 档案中的条目。如果指定为 embed,则根据 HAR 规范,内容将以内联方式存储在 HAR 文件中。对于 .zip 输出文件,默认值为 attach;对于所有其他文件扩展名,默认值为 embed

      • path 字符串

        文件系统上写入 HAR 文件的路径。如果文件名以 .zip 结尾,则默认使用 content: 'attach'

      • mode "full" | "minimal" (可选)

        当设置为 minimal 时,仅记录从 HAR 进行路由所需的信息。这会省略从 HAR 重放时不使用的 HAR 信息,例如大小、计时、页面、Cookie、安全等。默认值为 full

      • urlFilter 字符串 | RegExp (可选)

        用于过滤存储在 HAR 中的请求的 glob 或正则表达式模式。当提供了通过上下文选项设置的 baseURL 且传入的 URL 是路径时,它将通过 new URL() 构造函数合并。默认值为 none(无)。

      启用所有页面的 HAR 录制,保存到 recordHar.path 文件中。如果未指定,则不会记录 HAR。请务必等待 browserContext.close() 完成,以便保存 HAR。

    • recordVideo 对象 (可选)#

      • dir 字符串

        存放视频的目录路径。

      • size 对象 (可选)

        • width 数字

          视频帧宽度。

        • height 数字

          视频帧高度。

        录制视频的可选尺寸。如果未指定,尺寸将等于按比例缩小到 800x800 以适应的 viewport。如果未显式配置 viewport,视频尺寸默认为 800x450。必要时,每个页面的实际画面将按比例缩小以适应指定的尺寸。

      启用所有页面的视频录制,保存到 recordVideo.dir 目录中。如果未指定,则不会录制视频。请务必等待 browserContext.close() 完成,以便保存视频。

    • reducedMotion null | "reduce" | "no-preference" (可选)#

      模拟 'prefers-reduced-motion' 媒体特性,支持的值为 'reduce''no-preference'。请参阅 page.emulateMedia() 了解更多详情。传递 null 将仿真重置为系统默认值。默认值为 'no-preference'

    • screen 对象 (可选)#

      • width 数字

        页面宽度(像素)。

      • height 数字

        页面高度(像素)。

      模拟通过 window.screen 在网页内部可用的统一窗口屏幕尺寸。仅在设置了 viewport 时使用。

    • serviceWorkers "allow" | "block" (可选)#

      是否允许网站注册 Service worker。默认值为 'allow'

      • 'allow': Service Workers 可以注册。
      • 'block': Playwright 将阻止所有 Service Workers 的注册。
    • slowMo 数字 (可选)#

      将 Playwright 操作放慢指定的毫秒数。对于查看正在发生的事情很有用。

    • strictSelectors 布尔值 (可选)#

      如果设置为 true,则为此上下文启用严格选择器模式。在严格选择器模式下,当多个元素匹配选择器时,对暗示单个目标 DOM 元素的选择器的所有操作都将抛出错误。此选项不影响任何 Locator API(Locators 始终是严格的)。默认值为 false。请参阅 Locator 了解有关严格模式的更多信息。

    • timeout 数字 (可选)#

      等待浏览器实例启动的最大毫秒数。默认为 30000(30 秒)。传入 0 可禁用超时。

    • timezoneId 字符串 (可选)#

      更改上下文的时区。请参阅 ICU 的 metaZones.txt 以获取支持的时区 ID 列表。默认值为系统时区。

    • tracesDir 字符串 (可选)#

      如果指定,跟踪文件将保存到此目录。

    • userAgent 字符串 (可选)#

      在此上下文中使用的特定用户代理。

    • videoSize 对象 (可选)#

      已弃用

      请改用 recordVideo

      • width 数字

        视频帧宽度。

      • height 数字

        视频帧高度。

    • videosPath 字符串 (可选)#

      已弃用

      请改用 recordVideo

    • viewport null | 对象 (可选)#

      • width 数字

        页面宽度(像素)。

      • height 数字

        页面高度(像素)。

      为每个页面模拟一致的视口。默认值为 1280x720 视口。使用 null 来禁用一致的视口模拟。了解有关视口模拟的更多信息。

      注意

      null 值会退出默认预设,使视口取决于操作系统定义的主机窗口大小。这使得测试执行变得不确定。

返回值


launchServer

在 v1.9 之前添加 browserType.launchServer

返回浏览器应用实例。您可以通过 browserType.connect() 连接到它,这要求客户端/服务器的主/次版本匹配(例如 1.2.3 → 兼容 1.2.x)。

用法

启动客户端可以连接的浏览器服务器。以下是启动浏览器可执行文件并稍后连接到它的示例

const { chromium } = require('playwright');  // Or 'webkit' or 'firefox'.

(async () => {
const browserServer = await chromium.launchServer();
const wsEndpoint = browserServer.wsEndpoint();
// Use web socket endpoint later to establish a connection.
const browser = await chromium.connect(wsEndpoint);
// Close browser instance.
await browserServer.close();
})();

参数

  • options 对象 (可选)
    • args 数组<字符串> (可选)#

      警告

      使用自定义浏览器参数有风险,因为其中一些可能会破坏 Playwright 的功能。

      要传递给浏览器实例的附加参数。Chromium 标志列表可以在 这里 找到。

    • channel 字符串 (可选)#

      浏览器分发渠道。

      使用 "chromium" 启用 新的无头模式

      使用 "chrome", "chrome-beta", "chrome-dev", "chrome-canary", "msedge", "msedge-beta", "msedge-dev", 或 "msedge-canary" 使用 品牌化的 Google Chrome 和 Microsoft Edge

    • chromiumSandbox 布尔值 (可选)#

      启用 Chromium 沙盒。默认为 false

    • devtools 布尔值 (可选)#

      已弃用

      请改用 调试工具

      仅限 Chromium 是否为每个标签页自动打开开发者工具面板。如果此选项为 true,则 headless 选项将设置为 false

    • downloadsPath 字符串 (可选)#

      如果指定,接受的下载文件将下载到此目录。否则,将创建临时目录,并在浏览器关闭时删除。无论哪种情况,当创建下载文件的浏览器上下文关闭时,下载文件都会被删除。

    • env 对象<字符串, 字符串 | 数字 | 布尔值> (可选)#

      指定对浏览器可见的环境变量。默认为 process.env

    • executablePath 字符串 (可选)#

      用于运行而不是捆绑浏览器的可执行文件路径。如果 executablePath 是相对路径,则相对于当前工作目录解析。请注意,Playwright 仅适用于捆绑的 Chromium、Firefox 或 WebKit,请自行承担风险使用。

    • firefoxUserPrefs 对象<字符串, 字符串 | 数字 | 布尔值> (可选)#

      Firefox 用户首选项。有关 Firefox 用户首选项的更多信息,请参阅 about:config

    • handleSIGHUP 布尔值 (可选)#

      在接收到 SIGHUP 信号时关闭浏览器进程。默认为 true

    • handleSIGINT 布尔值 (可选)#

      在接收到 Ctrl-C 信号时关闭浏览器进程。默认为 true

    • handleSIGTERM 布尔值 (可选)#

      在接收到 SIGTERM 信号时关闭浏览器进程。默认为 true

    • headless 布尔值 (可选)#

      是否以无头模式运行浏览器。有关 ChromiumFirefox 的更多详细信息。默认为 true,除非 devtools 选项为 true

    • host 字符串 (可选)添加于: v1.45#

      用于 WebSocket 的主机。它是可选的,如果省略,服务器将在 IPv6 可用时接受非指定 IPv6 地址 (::) 上的连接,否则接受非指定 IPv4 地址 (0.0.0.0) 上的连接。考虑通过选择特定接口来增强安全性。

    • ignoreDefaultArgs 布尔值 | 数组<字符串> (可选)#

      如果为 true,Playwright 不会传递自己的配置参数,只使用来自 args 的参数。如果给定数组,则过滤掉给定的默认参数。危险选项;请谨慎使用。默认值为 false

    • logger Logger (可选)#

      Playwright 日志的日志接收器。

    • port 数字 (可选)#

      用于 WebSocket 的端口。默认值为 0,表示选取任意可用端口。

    • proxy 对象 (可选)#

      • server 字符串

        用于所有请求的代理。支持 HTTP 和 SOCKS 代理,例如 http://myproxy.com:3128socks5://myproxy.com:3128。短形式 myproxy.com:3128 被视为 HTTP 代理。

      • bypass 字符串 (可选)

        可选的逗号分隔的绕过代理的域,例如 ".com, chromium.org, .domain.com"

      • username 字符串 (可选)

        如果 HTTP 代理需要身份验证,可选的用户名。

      • password 字符串 (可选)

        如果 HTTP 代理需要身份验证,可选的密码。

      网络代理设置。

    • timeout 数字 (可选)#

      等待浏览器实例启动的最大毫秒数。默认为 30000(30 秒)。传入 0 可禁用超时。

    • tracesDir 字符串 (可选)#

      如果指定,跟踪文件将保存到此目录。

    • wsPath 字符串 (可选)添加于: v1.15#

      浏览器服务器的服务路径。为了安全起见,此值默认为一个不可猜测的字符串。

      警告

      任何知道 wsPath 的进程或网页(包括在 Playwright 中运行的)都可以控制操作系统用户。因此,在使用此选项时,您应该使用一个不可猜测的令牌。

返回值


name

在 v1.9 之前添加 browserType.name

返回浏览器名称。例如:'chromium''webkit''firefox'

用法

browserType.name();

返回值