Skip to content

Instantly share code, notes, and snippets.

@rosshadden
Created September 3, 2017 16:25
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 rosshadden/251f8ca495d45067916b05d05b63e05e to your computer and use it in GitHub Desktop.
Save rosshadden/251f8ca495d45067916b05d05b63e05e to your computer and use it in GitHub Desktop.
puppeteer head/less differences
#!/usr/bin/env node
const puppeteer = require('puppeteer');
const timeout = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
const params = {
url: 'https://vendorcentral.amazon.com/gp/vendor/sign-in',
user: 'foo@bar.baz',
password: 'lol',
isHeadless: false
};
async function main() {
const browser = await puppeteer.launch({
args: [ '--no-sandbox' ],
headless: params.isHeadless
});
try {
const page = await browser.newPage();
page.viewport({ width: 1920 / 2, height: 1080 / 2 });
await page.goto(params.url);
await page.focus('[name="username"]');
await page.type(params.user);
await page.focus('[name="password"]');
await page.type(params.password);
await page.$eval('[name="username"]', (e) => e.closest('form').querySelector('button').click());
await page.waitForNavigation();
await page.screenshot({ path: '/tmp/foo.png', fullPage: true });
} catch (ex) {
console.error(ex);
}
if (params.isHeadless) browser.close();
}
main();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment