Boa noite, colegas. Por acaso alguém já utilizou o framework puppeteer? Teria um exemplo para clarear as ideias?
Boa noite, colegas. Por acaso alguém já utilizou o framework puppeteer? Teria um exemplo para clarear as ideias?
Oi João, tudo bem?
O puppeteer é uma biblioteca baseada em promises. Basicamente, essa lib executa chamadas assíncronas para uma instância do Chrome:
const puppeteer = require('puppeteer');
const url = process.argv[2];
if (!url) {
throw "Please provide URL as a first argument";
}
async function run () {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto(url);
await page.screenshot({path: 'screenshot.png'});
browser.close();
}
run();
Primeiro, é feito o lauch do navegador (sem cabeçalho), depois abrimos uma nova página (guia) e navegamos até a URL fornecida via linha de comandos. Por fim, usamos o método interno do Puppeteer para fazer uma captura de tela (famosa screenshot), e só precisamos fornecer o diretório onde ele irá salvar o arquivo. Também precisamos nos certificar de fechar o navegador depois de concluirmos a nossa automação.
A documentação da lib é bem legal, deve te ajudar: https://github.com/GoogleChrome/puppeteer
Abraço!