import puppeteer from 'puppeteer'; import fs from 'fs'; import moment from 'moment'; const [url, title = '', subtitle = ''] = process.argv.slice(2); const date = moment().format('YYYY-MM-DD'); const path = './pdf'; if (!fs.existsSync(path)) fs.mkdirSync(path); let browser; try{ browser = await puppeteer.launch({ headless: true, args: [ "--disable-gpu", "--disable-dev-shm-usage", "--disable-setuid-sandbox", "--no-sandbox", ] }); const page = await browser.newPage(); page.setDefaultNavigationTimeout(0); await page.goto(url); await Promise.any([ page.mainFrame().waitForNavigation({waitUntil: 'networkidle0'}), new Promise(resolve => setTimeout(resolve,1000)) ]); await page.pdf({ path: `${path}/${date}_${title}.pdf`, format: 'A4', margin: { top: '20mm', bottom: '20mm', left: '12mm', right: '12mm' }, displayHeaderFooter: true, headerTemplate: `