Puppeteer VS Puppeteer-core

從v1.7.0之後每一個版本發佈兩個包:shell

  1. puppeteer
  2. puppeteer-core

puppeteer是一款用於瀏覽器自動化的產品。安裝後會下載Chromium,用puppeteer-core來驅動。puppeteer可支持一堆方便的PUPPETEER_ * env變量來調整其行爲。編程

puppeteer-core是一個驅動任何支持DevTools協議的庫。puppeteer-core在安裝時不會下載Chromium。做爲一個庫,puppeteer-core徹底經過其編程接口驅動,並忽略全部PUPPETEER_ * env變量。瀏覽器

puppeteer-core和puppeteer之間的區別可歸結爲如下兩點:less

  1. puppeteer-core在安裝時不會自動下載Chromium。
  2. puppeteer-core忽略全部PUPPETEER_ * env變量。

在多數狀況下能夠使用puppeteer。
在如下狀況下應該使用puppeteer-core:ui

  1. 構建基於DevTools協議的產品或庫。例如,能夠使用puppeteer-core構建PDF生成器並編寫自定義install.js腳本,該腳本下載headless_shell而不是Chromium以節省磁盤空間。
  2. 你正在捆綁Puppeteer以在Chrome Extension /瀏覽器中使用DevTools協議,由於下載額外的Chromium二進制文件是沒必要要的。

使用puppeteer-core時,需更改如下代碼:code

const puppeteer = require('puppeteer-core');
相關文章
相關標籤/搜索