javascript – Puppeteer JS从选择器生成PDF

我熟悉Puppeteer在Vue.js应用程序中使用,但我无法弄清楚如何根据页面上的特定元素生成PDF.我可以基于整页成功创建PDF,但这并不理想.有没有我错过的方法或课程可以允许这个?我找不到一个可链接的页面函数来按选择器进行过滤,如下所示:

    const browser = await puppeteer.launch();
    const page = await browser.newPage();
    await page.goto('https://what.a.fancy/website', {waitUntil: 'networkidle2'});
    await page.$('.just-this-html').pdf(options);

我确实看到有一个页面.$(选择器)函数,但我不知道如何使用.then()调用链接,该调用可以将返回的HTML访问为PDF.

谢谢!

解决方法:

试试这个代码.等待page.setContent()page.setContent

const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://www.google.com/', {waitUntil: 'networkidle2'});
const dom = await page.$eval('div.jsb', (element) => {
     return element.innerHTML
}) // Get DOM HTML
await page.setContent(dom)   // HTML markup to assign to the page for generate pdf
await page.pdf(options)
上一篇:javascript – 如何在puppeteer中导航dom元素?


下一篇:javascript – puppeteer:我如何等待ajax请求并处理结果