Agradeceríamos tu apoyo para compartir nuestros tutoriales sobre las ciencias de la computación.
Una forma de lograr esto es usar la evaluación que primero obtiene un array de todos los TD's
luego devuelve el contenido de texto de cada TD
const puppeteer = require('puppeteer');
const html = `
One Two
Three Four
`;
(async () =>
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto(`data:text/html,$html`);
const data = await page.evaluate(() =>
const tds = Array.from(document.querySelectorAll('table tr td'))
return tds.map(td => td.innerText)
);
//You will now have an array of strings
//[ 'One', 'Two', 'Three', 'Four' ]
console.log(data);
//One
console.log(data[0]);
await browser.close();
)();
También podría usar algo como: –
const data = await page.$$eval('table tr td', tds => tds.map((td) =>
return td.innerText;
));
//[ 'One', 'Two', 'Three', 'Four' ]
console.log(data);
Método de matriz bidimensional
También puede raspar el innerText
en un bidimensional array representando su mesa.
[
['A1', 'B1', 'C1'], // Row 1
['A2', 'B2', 'C2'], // Row 2
['A3', 'B3', 'C3'] // Row 3
]
página.$$eval()
const result = await page.$$eval('#example-table tr', rows =>
return Array.from(rows, row =>
const columns = row.querySelectorAll('td');
return Array.from(columns, column => column.innerText);
);
);
console.log(result[1][2]); // "C2"
página.evaluar()
const result = await page.evaluate(() =>
const rows = document.querySelectorAll('#example-table tr');
return Array.from(rows, row =>
const columns = row.querySelectorAll('td');
return Array.from(columns, column => column.innerText);
);
);
console.log(result[1][2]); // "C2"
Comentarios y valoraciones del tutorial
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)