API 参考
类
类 | 描述 |
---|---|
Accessibility | Accessibility 类提供了检查浏览器辅助功能树的方法。辅助功能树被诸如屏幕阅读器或开关等辅助技术所使用。 备注 辅助功能是一个非常特定于平台的东西。在不同的平台上,有不同的屏幕阅读器,它们可能有截然不同的输出。 Blink - Chrome 的渲染引擎 - 有一个“辅助功能树”的概念,然后将其转换为不同的平台特定的 API。辅助功能命名空间允许用户访问 Blink 辅助功能树。 当从 Blink AX 树转换为平台特定的 AX 树或由辅助技术本身转换时,大多数辅助功能树会被过滤掉。默认情况下,Puppeteer 尝试近似这种过滤,仅公开树的“有趣”节点。 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
Browser | Browser 表示一个浏览器实例,该实例要么
Browser 发出 各种事件,这些事件记录在 BrowserEvent 枚举中。 备注 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
BrowserContext | BrowserContext 表示 浏览器 中的各个用户上下文。 当 浏览器 启动时,它至少有一个默认的 浏览器上下文。其他可以使用 Browser.createBrowserContext() 创建。每个上下文都有隔离的存储空间(cookie/localStorage/等等)。 BrowserContext 发出 各种事件,这些事件记录在 BrowserContextEvent 枚举中。 如果一个 页面 打开另一个 页面,例如使用 备注 在 Chrome 中,所有非默认上下文都是隐身模式,如果您在启动浏览器时提供 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
BrowserLauncher | 描述一个启动器 - 一个能够创建和启动浏览器实例的类。 备注 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
CDPSession |
备注 可以使用 CDPSession.send() 方法调用协议方法,可以使用 有用的链接:DevTools 协议查看器 和 DevTools 协议入门。 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
Connection | |
ConsoleMessage | ConsoleMessage 对象由页面通过“console”事件分派。 备注 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
Coverage | Coverage 类提供了收集页面使用的 JavaScript 和 CSS 部分信息的方法。 备注 要以 Istanbul 可消费的形式输出覆盖率,请参阅 puppeteer-to-istanbul。 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
CSSCoverage | |
DeviceRequestPrompt | 设备请求提示允许您响应页面通过类似 WebBluetooth 的 API 请求设备。 备注
此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
DeviceRequestPromptDevice | 请求提示中的设备。 备注 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
Dialog | Dialog 实例由 Page 通过 备注 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
ElementHandle | ElementHandle 表示页面内的 DOM 元素。 备注 可以使用 Page.$() 方法创建 ElementHandles。
除非句柄被 释放,否则 ElementHandle 会阻止 DOM 元素被垃圾回收。当其原始框架导航时,ElementHandles 会自动释放。 ElementHandle 实例可以用作 Page.$eval() 和 Page.evaluate() 方法中的参数。 如果您正在使用 TypeScript,ElementHandle 会接受一个泛型参数,该参数表示句柄内部持有的元素的类型。例如,如果您有一个指向 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
EventEmitter | 许多 Puppeteer 类都扩展的 EventEmitter 类。 备注 这允许您侦听 Puppeteer 类触发的事件并采取相应的行动。因此,您主要使用 on 和 off 来绑定和取消绑定到事件侦听器。 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
ExtensionTransport | (实验性) 如果 Puppeteer 在扩展程序中运行,则实验性 ExtensionTransport 允许通过 chrome.debugger API 建立连接。由于 Chrome DevTools 协议对扩展程序有限制,因此传输实现了缺失的命令和事件。 备注 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
FileChooser | 文件选择器允许您对页面请求文件做出反应。 备注
在浏览器中,一次只能打开一个文件选择器。所有文件选择器都必须被接受或取消。如果不这样做,将阻止后续文件选择器出现。 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
Frame | 表示 DOM 框架。 要理解框架,您可以将框架视为 备注 框架生命周期由父 页面 上分派的三个事件控制 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
HTTPRequest | 表示页面发送的 HTTP 请求。 备注 每当页面发送请求时,例如请求网络资源时,Puppeteer 的
如果请求在某个时刻失败,则会发出 所有这些事件都提供一个
注意:HTTP 错误响应,如 404 或 503,从 HTTP 的角度来看仍然是成功的响应,因此请求将以 如果请求收到“重定向”响应,则请求成功完成并发出 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
HTTPResponse | HTTPResponse 类表示 Page 类接收的响应。 备注 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
JSCoverage | 备注 此类的构造函数被标记为内部的。第三方代码不应直接调用构造函数或创建扩展 |
JSHandle | 表示对 JavaScript 对象的引用。可以使用 Page.evaluateHandle() 创建实例。 除非句柄被有意 释放,否则句柄会阻止引用的 JavaScript 对象被垃圾回收。当其关联的框架导航离开或父上下文被销毁时,JSHandles 会自动释放。 句柄可以用作任何评估函数的参数,例如 Page.$eval()、Page.evaluate() 和 Page.evaluateHandle()。它们会被解析为它们引用的对象。 备注 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
键盘 | 键盘提供了一个用于管理虚拟键盘的 API。高级 API 是 Keyboard.type(),它接受原始字符并在页面上生成正确的 keydown、keypress/input 和 keyup 事件。 备注 对于更精细的控制,您可以使用 Keyboard.down()、Keyboard.up() 和 Keyboard.sendCharacter() 来手动触发事件,就像它们是从真实键盘生成的一样。 在 macOS 上,像 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
定位器 | 定位器描述了定位对象并对其执行操作的策略。如果由于对象未准备好执行操作而导致操作失败,则会重试整个操作。会自动检查成功操作的各种前提条件。 有关详细信息,请参阅 https://puppeteer.com.cn/guides/page-interactions#locators。 |
鼠标 | 鼠标类在相对于视口左上角的主框架 CSS 像素中操作。 备注 每个 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
页面 | 页面提供了与浏览器中的单个选项卡或 扩展后台页面 进行交互的方法。 注意 一个浏览器实例可能具有多个页面实例。 备注 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
ProtocolError | 当协议发生错误时,会发出 ProtocolError。 |
Puppeteer | 主要的 Puppeteer 类。 重要提示:如果您在 Node 环境中使用 Puppeteer,则在导入或 require 备注 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
PuppeteerError | 所有 Puppeteer 特定错误的基类 备注 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
PuppeteerNode | 使用 Node 特定的行为扩展了主要的 Puppeteer 类,用于获取和下载浏览器。 如果您在 Node 环境中使用 Puppeteer,则在运行 备注 最常用的方法是 launch,用于启动并连接到新的浏览器实例。 请参阅 主要的 Puppeteer 类,了解所有环境通用的方法,例如 Puppeteer.connect()。 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
ScreenRecorder | 备注 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
SecurityDetails | SecurityDetails 类表示通过安全连接接收的响应的安全详细信息。 备注 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
目标 | 目标表示 CDP 目标。在 CDP 中,目标是可调试的,例如框架、页面或工作线程。 备注 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
TimeoutError | 当某些操作因超时而终止时,会发出 TimeoutError。 备注 示例操作为 page.waitForSelector 或 puppeteer.launch。 |
TouchError | 当尝试移动或结束不存在的触摸时,会抛出 TouchError。 |
触摸屏 | 触摸屏类公开了触摸屏事件。 备注 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
跟踪 | 跟踪类公开了跟踪审计接口。 备注 您可以使用 此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
UnsupportedOperation | 如果当前使用的协议不支持某个方法,则 Puppeteer 会抛出此错误 |
WebWorker | 此类表示 WebWorker。 备注
此类的构造函数被标记为内部函数。第三方代码不应直接调用构造函数,也不应创建扩展 |
枚举
枚举 | 描述 |
---|---|
BrowserContextEvent | |
BrowserEvent | 一个 浏览器实例 可能发出的所有事件。 |
InterceptResolutionAction | |
LocatorEvent | 定位器实例可能发出的所有事件。 |
PageEvent | 页面实例可能发出的所有事件。 |
TargetType |
函数
函数 | 描述 |
---|---|
connect(options) | |
defaultArgs(options) | |
launch(options) | |
trimCache() |
接口
命名空间
命名空间 | 描述 |
---|---|
CDPSessionEvent | CDPSession 类发出的事件。 |
变量
变量 | 描述 |
---|---|
DEFAULT_INTERCEPT_RESOLUTION_PRIORITY | 默认的协同请求拦截解析优先级 |
executablePath | |
KnownDevices | 用于 Page.emulate() 的设备列表。 |
有效鼠标按钮的枚举。 | |
PredefinedNetworkConditions | 一个预定义的网络条件列表,用于 Page.emulateNetworkConditions()。 |
puppeteer |