[教程] 打包后的 Electron.js 如果要用 Puppeter
需要设置 executablePath
题图是本文作者的实际使用情景(在哪里用到了 Puppeter)
本文章写于2020年6月。
预计阅读时间:3分钟
这篇文章写什么?
如何在 Electron.js 里面使用 Puppeter.
特别是打包之后怎么用 Puppeter
对谁有用?
程序员
直入正题,初始化 puppeteer 的代码这样写:
executablePath = '/Applications/Chromium.app/Contents/MacOS/Chromium'
const browser = await puppeteer.launch({
executablePath: executablePath,
headless: true,
args: ['--no-sandbox', '--disable-setuid-sandbox'],
});
核心点
设定 executablePath 就是核心点
前置条件
需要 macOS 用户自己先安装 Chromium.app,
就是普通的安装程序就行,把 .app 拖动到 "应用程序"
(也就是 /Applications/
里)
为什么这样做?
如果把 Chromium.app (大小 290 MB) 通过 Electron.js 的打包流程
一起打包到 .app 里。作为成品发给用户。
不管怎样都会有权限错误问题,我试了很久一直没成功。
后来在网上看到这个
设定 executablePath 为 /Applications/Chromium.app/...
的方法,
实测居然可以(忘记哪里看到的了,所以没法给出处)
那么 Windows 怎么办?
我也不知道,我还没做到兼容 Windows 这一步。
环境
Electron.js 版本 8.0.0
全文完
感谢阅读