puppeteer-recorder 的原理是截取每一幀圖片,然後使用 ffmpeg 生成視頻,所以電腦上需要安裝 ffmpeg
使用
yarn add puppeteer puppeteer-recorder
const puppeteer = require('puppeteer');
const {record}= require('puppeteer-recorder');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await record({
browser: browser ,
page: page,
output: 'output.webm', // 輸出文件名稱
fps: 1 || 60, // 每秒多少幀 儘量小
frames: 5 || 60 * 5, // 生成多少頻視頻
prepare: async function (browser, page) {
/* 生成視頻前執行操作 */
await page.goto('https://www.baidu.com')
},
render: async function (browser, page, frame) {
/* 截取每一幀圖片時運行 當前執行 frames的次數 5 || 300 */
// 總幀數 / 幀數 = 秒數
// 第2秒跳轉到
if(frame == 2 + 1){
await page.goto('https://blog.csdn.net/hobtdto/article/details/107134908')
}
// 第3秒跳回百度
if(frame == 3 + 1 ){
await page.goto('https://www.baidu.com')
}
},
})
})();