我有一个木偶师问题。我有一个数组与链接
let links = ["...", "...", "..."];
大约有30个链接。我想用Promise.all()
一次刮光它们
let descriptions = await Promise.all(
links.map((url) => getDescription(page, url))
);
每个页面都有一个描述,但由于某种原因,我的descriptions
数组中填充了30个相同的描述。
为什么?我需要一个一个刮还是?
描述功能:
export async function getDescription(page, url) {
await page.goto(url);
let selector = ".C4VMK > span";
return page.$eval(selector, (handle) => handle.textContent);
}
我是这样管理的:
我创建了一个新的选项卡,并从打开该URL
export async function getDescription(browser, url) {
let page = await browser.newPage();
await page.goto(url);
let selector = ".C4VMK > span";
let result = await page.$eval(selector, (handle) => handle.textContent);
page.close();
return result;
}