码迷,mamicode.com
首页 > 其他好文 > 详细

Puppeteer--其它功能

时间:2021-01-19 12:20:37      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:pre   算数   有用   sts   dom   rip   layout   执行   rgb   

1.Page.exposeFunction()
Page.exposeFunction,这个 API 用来在页面注册全局函数,非常有用:
在比如给 window 对象注册 readfile 全局函数:
const puppeteer = require(‘puppeteer‘);
const fs = require(‘fs‘);
 
puppeteer.launch().then(async browser => {
  const page = await browser.newPage();
  page.on(‘console‘, msg => console.log(msg.text));
  await page.exposeFunction(‘readfile‘, async filePath => {
    return new Promise((resolve, reject) => {
      fs.readFile(filePath, ‘utf8‘, (err, text) => {
        if (err)
          reject(err);
        else
          resolve(text);
      });
    });
  });
  await page.evaluate(async () => {
    // use window.readfile to read contents of a file
    const content = await window.readfile(‘/etc/hosts‘);
    console.log(content);
  });
  await browser.close();
});
 
2.page.metrics()
通过 page.metrics() 可以得到一些页面性能数据, 捕获网站的时间线跟踪,以帮助诊断性能问题。
  • Timestamp 度量标准采样的时间戳
  • Documents 页面文档数
  • Frames 页面 frame 数
  • JSEventListeners 页面内事件监听器数
  • Nodes 页面 DOM 节点数
  • LayoutCount 页面布局总数
  • RecalcStyleCount 样式重算数
  • LayoutDuration 所有页面布局的合并持续时间
  • RecalcStyleDuration 所有页面样式重新计算的组合持续时间。
  • ScriptDuration 所有脚本执行的持续时间
  • TaskDuration 所有浏览器任务时长
  • JSHeapUsedSize JavaScript 占用堆大小
  • JSHeapTotalSize JavaScript 堆总量

 

Puppeteer--其它功能

标签:pre   算数   有用   sts   dom   rip   layout   执行   rgb   

原文地址:https://www.cnblogs.com/absoluteli/p/14295501.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!