puppeteer入门教程

236 阅读1分钟

1.什么是puppeteer?

puppeteer是一个Node库,它提供一个高级Api来通过DevTools协议来控制Chromium或者Chrome; puppeteer默认是headless(无头模式)运行,可以通过修改配置文件改成‘有头’模式。 注释:DevTools协议是指允许工具对Chrome或者Chromium及其他基于Blink的浏览器进行调试、审查的协议,如DOM, Debugger, Network, Timeline等,

2.puppeteer有什么作用?

1)生成页面PDF

2)抓取 SPA(单页应用)并生成预渲染内容(即“SSR”(服务器端渲染))。

3)自动提交表单,进行 UI 测试,键盘输入等。

4)创建一个时时更新的自动化测试环境。 使用最新的 JavaScript 和浏览器功能直接在最新版本的Chrome中执行测试。

5)捕获网站的timeline trace用来帮助分析性能问题。

6)测试浏览器扩展

3.如何安装使用puppeteer?

1)安装

在项目中:npm i puppeteer 或者 yarn add puppeteer进行安装。在安装puppeteer的同时,它会下载最新版本的Chromium(~170MB Mac,~282MB Linux,~280MB Win),以保证可以使用 API。

2)puppeteer-core

puppeteer-core 是一个的轻量级的 Puppeteer 版本,用于启动现有浏览器安装或连接到远程安装。 安装:npm i puppeteer-core 或者 yarn add puppeteer-core

3)使用

Puppeteer 至少需要 Node v6.4.0,如果要使用 async / await,它们仅在 Node v7.6.0 或更高版本中被支持。