Nodejs将网页保存成缩略图到本地目录

377 阅读1分钟

可以使用第三方库 puppeteer 来实现在 Node.js 中生成网页缩略图,并将其保存到本地。

以下是一个基本的示例代码:

const puppeteer = require('puppeteer');
const fs = require('fs');

async function generateThumbnail(url, outputPath) {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto(url);
  
  const screenshotOptions = {
    type: 'jpeg',
    quality: 90,
    fullPage: false,
    omitBackground: true
  };

  const thumbnailBuffer = await page.screenshot(screenshotOptions);
  await browser.close();

  fs.writeFileSync(outputPath, thumbnailBuffer);
}

// 示例用法
generateThumbnail('https://example.com', './thumbnail.jpg'); 

这个代码使用 puppeteer 库中的 page.screenshot() 方法来捕捉当前页面的截图,然后将其保存到指定的文件路径。可以根据需要调整截图选项,例如更改截图格式、质量和是否捕捉整个页面等。