木偶戏空白pdf一代

时间:2018-02-07 17:08:12

标签: 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();
      })
  })
})

由于内核问题,我使用了no-sandbox选项。

我正在使用CentOS 7

1 个答案:

答案 0 :(得分:2)

我必须在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();
          })
      })
  })
})