puppeteer vs puppeteer-core vs puppeteer-extra

本文介绍了puppeteer、puppeteer-core和puppeteer-extra之间的关系。puppeteer在安装时会下载Chromium,而puppeteer-core则不包含Chromium,适用于已安装或不需要Chromium的场景。puppeteer-extra是puppeteer的增强版,支持通过插件扩展功能。使用puppeteer-core时需手动指定浏览器路径,并考虑环境变量的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

puppeteer与puppeteer-core的关系。

本文摘自官网文档,便于查阅。源文档puppeteer vs puppeteer-core

从v1.7.0开始的每个版本,我们都会发布两个软件包:

  • puppeteer
  • puppeteer-core
    puppeteer是用于浏览器自动化的产品。安装后,它将下载Chromium的版本,然后使用进行驱动puppeteer-core。作为最终用户产品,puppeteer支持许多PUPPETEER_*env变量来调整其行为。

puppeteer-core是一个库,用于帮助驱动任何支持DevTools协议的内容。puppeteer-core安装后不会下载Chromium。作为一个库,puppeteer-core完全可以通过其编程界面来驱动,而无视所有的PUPPETEER_*env变量。

总结起来,puppeteer-core和之间的唯一区别puppeteer是:

puppeteer-core 安装后不会自动下载Chromium。

puppeteer-core忽略所有环境PUPPETEER_*变量。

在大多数情况下,您可以使用该puppeteer软件包。

但是,您应该在以下情况下使用puppeteer-core:

您将在DevTools协议之上构建另一个最终用户产品或库。例如,一个人可能会使用构建一个PDF生成器,puppeteer-core并编写一个自定义install.js脚本来下载headless_shell而不是Chromium,以节省磁盘空间。

您将Puppeteer绑定到Chrome扩展程序/浏览器中,并与DevTools协议结合使用,从而无需下载其他Chromium二进制文件。

您正在构建一套工具(其中puppeteer-core的要素之一),并且您希望将install.js脚本执行推迟到要使用Chromium之前。

使用时puppeteer-core,请记住更改包含行:

const puppeteer = require(‘puppeteer-core’);

然后,您需要调用puppeteer.connect([options])或puppeteer.launch([options])使用显式executablePath选项。

puppeteer-extra

puppeteer-extra是puppeteer的直接替代,它通过插件功能增强了已安装的puppeteer的功能。

可以通过puppeteer.use()添加任意数量的插件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值