#javascript #puppeteer
#javascript #кукловод
Вопрос:
У меня проблема с кукловодом. У меня есть массив со ссылками
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);
}
Ответ №1:
Я справился с этим следующим образом:
Я создаю новую вкладку и открываю этот 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 resu<
}