Puppeteer 中文文档v25.8.0

ConnectOptions 接口

启动任何浏览器或连接到现有浏览器实例时可传入的通用浏览器选项。

签名

export interface ConnectOptions

属性

属性

修饰符

类型

说明

默认值

acceptInsecureCerts

optional

boolean

导航期间是否忽略 HTTPS 错误。

false

allowlist

optional

string[]

(实验性) 允许的 URL 模式列表。

需要 Chrome 149 或更高版本。

此选项允许你限制浏览器只能访问与 allowList 中的模式匹配的 URL。它使用标准的 [URLPattern](https://urlpattern.spec.whatwg.org/) API 来匹配 URL。

当连接到现有浏览器时,Puppeteer 会静默断开所有违反这些模式的已打开目标。

对于浏览器发出的任何网络请求(包括导航以及图像或脚本等子资源),如果 URL 与 allowlist 中的任何模式都不匹配,该请求将因错误而失败。

备注:

目前仅支持 Chrome。

该功能在 Puppeteer 附加到 CDP 目标时生效。它会在 Chrome 的网络服务中拦截请求。Chrome 可能会以其他方式执行某些网络访问,或者某些 Web 功能可能会绕过网络服务。该功能旨在为 Puppeteer 控制下的基于 LLM 的使用提供额外的护栏,而非完整的网络沙箱。如需完整的网络沙箱,我们建议使用容器/操作系统级的沙箱机制。

不能与 ConnectOptions.blocklist 同时使用。

blocklist

optional

string[]

(实验性) 要阻止的 URL 模式列表。

此选项允许你限制浏览器访问特定 URL 或来源。它使用标准的 [URLPattern](https://urlpattern.spec.whatwg.org/) API 来匹配 URL。

当连接到现有浏览器时,Puppeteer 会静默断开所有违反这些模式的已打开目标。

对于浏览器发出的任何网络请求(包括导航以及图像或脚本等子资源),如果 URL 匹配被阻止的模式,该请求将因错误而失败。

备注:

目前仅支持 Chrome。

该功能在 Puppeteer 附加到 CDP 目标时生效。它会在 Chrome 的网络服务中拦截请求。Chrome 可能会以其他方式执行某些网络访问,或者某些 Web 功能可能会绕过网络服务。该功能旨在为 Puppeteer 控制下的基于 LLM 的使用提供额外的护栏,而非完整的网络沙箱。如需完整的网络沙箱,我们建议使用容器/操作系统级的沙箱机制。

不能与 ConnectOptions.allowlist 同时使用。

browserURL

optional

string

browserWSEndpoint

optional

string

capabilities

optional

SupportedWebDriverCapabilities

传递给 BiDi session.new 的 WebDriver BiDi 能力。

备注:

仅适用于 protocol="webDriverBiDi"Puppeteer.connect()

channel

optional

ChromeReleaseChannel

(实验性) 如果指定,puppeteer 会在指定频道的已知默认用户数据目录中查找已打开的 WebSocket,并尝试使用 ws://localhost:$ActivePort/devtools/browser 连接到它。仅适用于 Chrome,且仅在 Node.js 中运行时生效。

与 puppeteer.connect() 一起使用时,此选项为实验性。

defaultViewport

optional

Viewport | null

为每个页面设置视口。

'{width: 800, height: 600}'

downloadBehavior

optional

DownloadBehavior

为上下文设置下载行为。

handleDevToolsAsPage

optional

boolean

是否在 Puppeteer 中将 DevTools 窗口作为页面处理。仅支持使用 CDP 的 Chrome。

'false'

headers

optional

Record<string, string>

用于 WebSocket 连接的标头。

备注:

仅在 Node.js 环境中生效。

issuesEnabled

optional

boolean

(实验性) 用于默认禁用问题事件监控的实验性设置。

true

logger

optional

Logger

(实验性) 提供时,Puppeteer 会以调试通道前缀 DebugPrefix 调用 logger。如果 logger 返回 LoggerFunction,Puppeteer 将使用它记录该通道的详细信息。

networkEnabled

optional

boolean

(实验性) 用于默认禁用网络事件监控的实验性设置。设置为 false 时,Puppeteer 中依赖网络事件的部分将无法工作,例如 HTTPRequest 和 HTTPResponse。

true

protocol

optional

ProtocolType

在运行时确定:

  • 启动 Chrome - 'cdp'。

  • 启动 Firefox - 'webDriverBiDi'。

  • 连接到浏览器 - 'cdp'。

protocolTimeout

optional

number

单个协议(CDP)调用的超时设置。

180_000

slowMo

optional

number

将 Puppeteer 操作减慢指定的毫秒数,以帮助调试。

targetFilter

optional

TargetFilterCallback

用于决定 Puppeteer 是否应连接到给定目标的回调。

transport

optional

ConnectionTransport