Puppeteer 是谷歌官方出品的一个通过 DevTools 协议控制 headless Chrome 的 Node 库。可以通过 Puppeteer 的提供的 api 直接控制Chrome模拟大部分用户操作来进行UI Test或者作为爬虫访问页面来收集数据。它最大的特点就是它的操作 Dom 可以完全在内存中进行模拟既在V8引擎中处理而不打开浏览器
- 网页爬虫(仿真模拟用户操作)
- 利用网页生成PDF、图片
- 爬取SPA应用,并生成预渲染内容(即“SSR” 服务端渲染)
- 自动化表单提交、UI测试、键盘输入等
- 帮你创建一个最新的自动化测试环境(chrome),可以直接在此运行测试用例
- 捕获站点的时间线,以便追踪你的网站,帮助分析网站性能问题
Puppeteer 本身依赖6.4以上的 Node,但是为了异步超级好用的 async/await,推荐使用7.6版本以上的 Node。另外 headless Chrome 本身对服务器依赖的库的版本要求比较高,centos 服务器依赖偏稳定,v6很难使用 headless Chrome,提升依赖版本可能出现各种服务器问题(包括且不限于无法使用 ssh ),最好使用高版本服务器。
npm install如果安装报错请切换淘宝镜像 cnpm 安装即可
node index- 打开百度,并保存截图
- iPhoneX模式打开百度,并保存截图
- iPhoneX模式打开百度,搜索puppeteer关键字,跳转到查询结果页面后,保存截图


