puppeteer;ssr;

疑问

摘要&心得

Puppeteer 在 1.7.0 版本之后,会同时给开发者提供:

  • Puppeteer
  • Puppeteer-core

两个版本。它们的区别在于载入安装 Puppeteer 时,是否会下载 Chromium。

具体 Puppeteer 的应用场景有:

  • 为网页生成页面 PDF 或者截取图片;
  • 抓取 SPA(单页应用)并生成预渲染内容;
  • 自动提交表单,进行 UI 测试、键盘输入等;
  • 创建一个随时更新的自动化测试环境,使用最新的 JavaScript 和浏览器功能直接在最新版本的 Chrome 中执行测试;
  • 捕获网站的timeline trace,用来帮助分析性能问题;
  • 测试浏览器扩展。

基于pptr实现的简单的ssr:

  • 根据url配置页面缓存
  • 通过page.content()获取页面html内容存入缓存
  • 返回页面

    pptr tips

  • 访问页面地址直到页面网络状态为 idle

    • await page.goto(url, {waitUntil: ‘networkidle0’})