📌  相关文章
📜  安装 puppeteer linux 18.04 (1)

📅  最后修改于: 2023-12-03 15:09:24.841000             🧑  作者: Mango

安装 Puppeteer on Linux 18.04

Puppeteer是一个Node.js库,它提供了一个高级API来通过DevTools协议控制无头版Chrome或Chromium。Puppeteer是对Headless Chrome的封装,可以让我们在没有UI的情况下,通过DevTools协议操纵Chrome或Chromium,完成网页爬取、页面截图、模拟表单提交、UI测试、网页性能分析等工作。

以下是在Linux 18.04上安装Puppeteer的步骤:

步骤一:安装Node.js

首先,如果你还没有安装Node.js,需要先安装它。我们可以通过NVM(Node Version Manager)来安装Node.js,这也是推荐的做法。

# 安装NVM
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash
source ~/.bashrc

# 安装最新版Node.js
nvm install node
步骤二:安装Chromium

由于Puppeteer是对Headless Chrome的封装,因此我们需要先安装Chromium浏览器。我们可以通过apt-get来安装它:

sudo apt-get update && sudo apt-get install -y chromium-browser
步骤三:安装Puppeteer

现在,我们可以通过npm来安装Puppeteer了:

npm i puppeteer

如果你在中国大陆国内,建议使用代理来加速安装,比如:

npm i puppeteer --registry=https://registry.npm.taobao.org

注意:如果你使用的是npm v7或更高版本,在安装Puppeteer时可能会出现找不到Chromium的情况。此时可以手动指定Chromium的路径:

PUPPETEER_SKIP_DOWNLOAD=true PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser npm i puppeteer

现在,你已经成功安装了Puppeteer!

步骤四:测试

为了验证Puppeteer是否已经正确安装,我们可以尝试运行它提供的示例脚本来截取谷歌首页的截图:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch({
    headless: true, // 是否为无头模式
    args: ['--no-sandbox'] // 取消沙盒模式
  });
  const page = await browser.newPage();
  await page.goto('https://www.google.com');
  await page.screenshot({ path: 'example.png' });
  await browser.close();
})();

运行上述代码,如果一切正常的话,你可以在当前目录下看到一个example.png的截图文件,它应该是谷歌首页的截图。

总结

通过上述步骤,你已经成功地在Linux 18.04上安装了Puppeteer。现在,你可以开始使用Puppeteer来完成各种网页爬取、页面截图、模拟表单提交、UI测试、网页性能分析等工作了。