Итак, я пытаюсь сканировать сайт, используя Puppeteer.Все данные, которые я ищу, находятся в нескольких таблицах.В частности, я пытаюсь получить данные из одной таблицы.Я смог получить конкретную таблицу, используя очень подробный .querySelector(table.myclass ~ table.myclass)
, поэтому теперь моя проблема в том, что мой код захватывает первый элемент каждой таблицы (начиная с правильной таблицы, которая является 2-й таблицей), но я могу 'не найти способ заставить его просто собрать все данные только во 2-й таблице.
const puppeteer = require('puppeteer');
const myUrl = "https://coolurl.com";
(async () => {
const browser = await puppeteer.launch({
headless: true
});
const page = (await browser.pages())[0];
await page.setViewport({
width: 1920,
height: 926
});
await page.goto(myUrl);
let gameData = await page.evaluate(() => {
let games = [];
let gamesElms = document.querySelectorAll('table.myclass ~ table.myclass');
gamesElms.forEach((gameelement) => {
let gameJson = {};
try {
gameJson.name = gameelement.querySelector('.myclass2').textContent;
} catch (exception) {
console.warn(exception);
}
games.push(gameJson);
});
return games;
})
console.log(gameData);
browser.close();
})();