Skip to content

Instantly share code, notes, and snippets.

@TONYHOKAN
Created April 20, 2019 11:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save TONYHOKAN/9b7e6fc1983eb9aac48a8992dacd9643 to your computer and use it in GitHub Desktop.
Save TONYHOKAN/9b7e6fc1983eb9aac48a8992dacd9643 to your computer and use it in GitHub Desktop.
simple node script to screen shot whole web page
#!/usr/bin/env node
// must install global puppeteer node module and npm link
const puppeteer = require('puppeteer');
const [,, ...args] = process.argv
const url = args[0]
if (!url)
{
console.log("please provide url!")
return
}
var datetime = new Date();
var isoDate = datetime.toISOString()
const screenshotName = args[1] || `screen_${isoDate}`
async function screenshot(){
// console.log(url)
// console.log(screenshotName)
console.log(`start screenshot ${url}`)
let browser
try {
browser = await puppeteer.launch();
const page = await browser.newPage();
page.setViewport({width: 1920, height: 1080})
await page.goto(url);
const filename = screenshotName + ".png"
await page.screenshot({fullPage: true, path: filename});
await browser.close();
console.log(`done. export screen to: ${filename}`)
} catch (error) {
console.error(error)
}
finally
{
if(!!browser)
{
browser.close()
}
}
}
screenshot()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment