可以使用第三方库 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() 方法来捕捉当前页面的截图,然后将其保存到指定的文件路径。可以根据需要调整截图选项,例如更改截图格式、质量和是否捕捉整个页面等。