puppeteer 空白 pdf 生成

M. *_*ara 6 pdf-generation puppeteer

我正在使用这个简单的代码从http://example.com/生成 pdf 文档 ,但我不断收到生成的空白 pdf ...

我错过了什么吗?

const puppeteer = require('puppeteer');

puppeteer.launch({ args: ['--no-sandbox', '--disable-setuid-sandbox'] }).then(function (browser) {
  browser.newPage().then(function (page) {
    page
      .goto('http://example.com/', { waitUntil:['domcontentloaded', 'networkidle0','load'] })
      .then(page.pdf({ path: 'result.pdf', format: 'letter' }))
      .then(() => {
        browser.close();
      })
  })
})
Run Code Online (Sandbox Code Playgroud)

由于内核问题,我使用了无沙箱选项。

我使用的是 CentOS 7

M. *_*ara 4

我不得不等待 page.goto() 中的承诺。然后...

const puppeteer = require('puppeteer');


puppeteer.launch({ args: ['--no-sandbox', '--disable-setuid-sandbox'] }).then(function (browser) {
  browser.newPage().then(function (page) {

    page
      .goto('https://www.example.com', { waitUntil: ['domcontentloaded', 'networkidle0', 'load'] }).then(function (response) {
    //    page.emulateMedia('screen')
        page.pdf({ path: 'result.pdf', format: 'letter' })
          .then(function (res) {
            browser.close();
          }).catch(function (e) {
            browser.close();
          })
      })
  })
})
Run Code Online (Sandbox Code Playgroud)