我想从共同基金网站上删除某些数据,在该网站上我只能跟踪选择性基金而不是全部跟踪。
因此,我试图伪造者来抓取该网站生成的动态表。我设法得到表,但是当我尝试将其解析为cheerio时,似乎什么也没发生
const scrapeImages = async (username) => {
console.log("test");
const browser = await puppeteer.launch({
args: ['--no-sandbox']
});
const page = await browser.newPage();
await page.goto('https://www.publicmutual.com.my/Our-Products/UT-Fund-Prices');
await page.waitFor(5000);
const data = await page.evaluate( () => {
const tds = Array.from(document.querySelectorAll('div.form-group:nth-child(4) > div:nth-child(1) > div:nth-child(1)'))
return tds.map(td => td.innerHTML)
});
await browser.close();
console.log(data);
let $ = cheerio.load(data);
$('table > tbody > tr > td').each((index, element) => {
console.log($(element).text());
});
};
scrapeImages("test");
[我最终不确定如何直接使用puppeteer进行此操作,而不是直接引导至cheerio进行刮取,例如,如果您在此处访问网上https://www.publicmutual.com.my/Our-Products/UT-Fund-Prices,我也只想刮除选定的资金
我只想从缩写中获得资金-PAIF-PAGF-PCIF
而不是全部。不知道如何只用木偶做这件事?
该页面已经有jQuery,它甚至比cheerio更好:
const rows = await page.evaluate( () => {
return $('.fundtable tr').get().map(tr => $(tr).find('td').get().map(td => $(td).text()))
}