Skip to content

Instantly share code, notes, and snippets.

@ragog
Created December 16, 2020 15:42
Show Gist options
  • Save ragog/18f892d75f79577828f5169cb3620184 to your computer and use it in GitHub Desktop.
Save ragog/18f892d75f79577828f5169cb3620184 to your computer and use it in GitHub Desktop.
const { chromium } = require('playwright')
const fs = require('fs');
(async () => {
const browser = await chromium.launch()
const page = await browser.newPage()
const navigationPromise = page.waitForNavigation()
const templateHeader = fs.readFileSync('template-header.html', 'utf-8')
const templateFooter = fs.readFileSync('template-footer.html', 'utf-8')
await page.goto('https://theheadless.dev/posts')
await navigationPromise
await page.waitForSelector('.accept', { visible: true })
await page.evaluate(() => document.querySelector('.accept').click())
await page.waitForSelector('.accept', { hidden: true })
await page.pdf({
path: 'hd-posts.pdf',
displayHeaderFooter: true,
headerTemplate: templateHeader,
footerTemplate: templateFooter,
margin: {
top: '100px',
bottom: '40px'
},
printBackground: true
})
await browser.close()
})()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment