如何使用 cheerio 和 fs 将网站转换为 pdf

How to convert a website to pdf with cheerio and fs

我正在尝试从网站获取 pdf 文档,但我一直在获取 pdf 上的代码,而不是图片或“屏幕截图”。我想坚持cheerio和fs。

这是保存的地方。

const pdf_completo = fs.createWriteStream('paginas/pdf_completo.pdf');

这是我试图用来获取它的函数。

async function obtener_pdf_pagina(){
    const $ = await request({
        uri: 'http://quotes.toscrape.com/',
        transform: pdf => cheerio.load(pdf)
    });
    const todo_pagina = $('*');
    pdf_completo.write(todo_pagina.html());
}

我认为 cheerio 没有任何屏幕截图功能。 Cheerio 解析 HTML 并为您提供类似于 DOM 的 API,您可以与之交互,但实际上不会在屏幕上呈现任何内容。

据我所知,您需要像 puppeteer 这样的工具来进行屏幕截图(使用 chromium 浏览器引擎进行渲染)