UNPKG

cotacao-atual

Version:

Consulte algumas cotações atual da B3.

75 lines (68 loc) 1.61 kB
const puppeteer = require('puppeteer'); //Criador original = npm-cotacoes //Arrumado por blacknaut e atualizado! async function cotacoes(cotacao){ switch(cotacao){ case 'petrobras': var url = 'petrobras-petr4/' break; case 'vale': var url = 'vale-vale3/' break; case 'itau': var url = 'itau-unibanco-itub4/' break; case 'ambev': var url = 'ambev-abev3/' break; case 'gerdau': var url = 'gerdau-ggbr4/' break; case 'ibove': var url = 'ibovespa/' break; case 'bitcoin': var url = 'bitcoin-btc/' break; case 'ifix': var url = 'ifix/' break; case 'magazineluiza': var url = 'magazine-luiza-mglu3/' break; } const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto(`https://www.infomoney.com.br/cotacoes/b3/acao/${url}`); const dadoCotacao = await page.evaluate(()=>{ const dados = document.querySelectorAll('body .line-info p') const dadosArray = [...dados] const list = { valor_pontos: '', variacao: '', min: '', max: '', volume: '' } dadosArray.map( (p, index) => { switch(index){ case 0: list.valor_pontos = p.innerText case 1: list.variacao = p.innerText case 2: list.min = p.innerText case 3: list.max = p.innerText case 4: list.volume = p.innerText } }) return list; }); await browser.close(); return dadoCotacao; } module.exports = { cotacoes }