Puppeteer 中文文档v25.8.0

PuppeteerNode 类

扩展主 Puppeteer 类,加入 Node 特有的行为,用于获取和下载浏览器。

如果你在 Node 环境中使用 Puppeteer,运行 import puppeteer from 'puppeteer' 时得到的将是这个类。

签名

export declare class PuppeteerNode extends Puppeteer

继承自: Puppeteer

备注

最常用的方法是 launch,它用于启动并连接到一个新的浏览器实例。

参见主 Puppeteer 类了解所有环境通用的方法,例如 Puppeteer.connect()

此类的构造函数被标记为内部方法。第三方代码不应直接调用构造函数,也不应创建继承 PuppeteerNode 类的子类。

示例

以下是使用 Puppeteer 驱动自动化的典型示例:

import puppeteer from 'puppeteer';

const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://www.google.com');
// other actions...
await browser.close();

创建 page 之后,你就可以使用庞大的 API 与页面交互、导航,或在该页面中查找特定元素。`page` 文档列出了所有可用的方法。

属性

属性

修饰符

类型

说明

configuration

() => Promise<Configuration>

方法

方法

修饰符

说明

connect(options)

此方法将 Puppeteer 附加到现有浏览器实例。

defaultArgs(options)

defaultBrowser()

默认启动的浏览器名称。对于 puppeteer,这受你的配置影响;否则为 chrome

executablePath(channel)

给定 ChromeReleaseChannel 的默认可执行文件路径。

executablePath(options)

给定 LaunchOptions 的默认可执行文件路径。

executablePath()

默认可执行文件路径。

lastLaunchedBrowser()

上次启动的浏览器名称。

launch(options)

使用给定的参数和选项(若指定)启动一个浏览器实例。

puppeteer-core 一起使用时,必须提供 options.executablePathoptions.channel

备注:

Puppeteer 也可以用来控制 Chrome 浏览器,但与默认下载的 Chrome for Testing 版本配合效果最佳。不保证它能与其他任何版本正常工作。如果偏好使用 Google Chrome(而非 Chrome for Testing),建议使用 Chrome CanaryDev Channel 版本。请参阅这篇文章了解 Chromium 与 Chrome 之间的差异。这篇文章描述了 Linux 用户会遇到的一些差异。关于 Chrome for Testing 的说明,请参阅这份文档

setFollowSymlinks(followSymlinks)

定义 Puppeteer 是否应在文件操作中跟随符号链接。

trimCache()

移除提供的 Puppeteer 配置所标识的缓存目录中所有非当前版本的 Firefox 和 Chrome 二进制文件。当前浏览器版本通过解析 Puppeteer 中的 PUPPETEER_REVISIONS 来确定,除非提供了 configuration.browserRevision

备注:

请注意,此方法不会检查主机上安装的其他使用相同缓存目录的 Puppeteer 版本是否需要这些非当前版本的二进制文件。