如何使用 Puppeteer 抓取 table?
How to scrape a table using Puppeteer?
我想要的是抓取一个table,然后将数据保存在一个数组中,比如result=[tr][ts]
。
怎样才能得到我想要的结果?
我正在尝试这样的事情:
const row = await mainframe.$$eval('#clasificacion > .panel > .table- responsive > #resultadosTable > tbody > tr ', trs => trs.map((tr) =>{
console.log(tr);
return tr.textContent;}));
但结果就像result=[tr]
。
您可以使用以下方法获取 table 单元格 textContent
的二维数组,可以通过 row[rowNum][cellNum]
:
访问
const selector = '#clasificacion > .panel > .table-responsive > #resultadosTable > tbody > tr';
const row = await mainframe.$$eval(selector, trs => trs.map(tr => {
const tds = [...tr.getElementsByTagName('td')];
return tds.map(td => td.textContent);
}));
// console.log(row[rowNum][cellNum]); <-- textContent
我想要的是抓取一个table,然后将数据保存在一个数组中,比如result=[tr][ts]
。
怎样才能得到我想要的结果?
我正在尝试这样的事情:
const row = await mainframe.$$eval('#clasificacion > .panel > .table- responsive > #resultadosTable > tbody > tr ', trs => trs.map((tr) =>{
console.log(tr);
return tr.textContent;}));
但结果就像result=[tr]
。
您可以使用以下方法获取 table 单元格 textContent
的二维数组,可以通过 row[rowNum][cellNum]
:
const selector = '#clasificacion > .panel > .table-responsive > #resultadosTable > tbody > tr';
const row = await mainframe.$$eval(selector, trs => trs.map(tr => {
const tds = [...tr.getElementsByTagName('td')];
return tds.map(td => td.textContent);
}));
// console.log(row[rowNum][cellNum]); <-- textContent