Я создал скрипт, использующий node.js
в сочетании с puppeteer
для очистки некоторых табличных данных с веб-сайта.Хотя данные, которые я получаю, не генерируются динамически, я все же использовал puppeteer
.
Однако, когда я выполняю свой скрипт, я получаю вывод в виде одного столбца, а не списка.Причем разбираются только имена и больше ничего.Ниже я привел два примера, чтобы уточнить, что я имел в виду.
Ссылка на сайт
Это то, что я пробовалпока что:
const puppeteer = require("puppeteer");
(async function main() {
try {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto("https://fantasy.premierleague.com/player-list/");
page.waitForSelector("table.ism-table");
const data = await page.$$("table.ism-table tbody tr");
for (const td of data) {
const tdata = await td.$eval("td", item => item.innerText);
console.log(tdata);
}
browser.close();
} catch (e) {
console.log("Here goes the error ", e);
}
})();
Мой текущий выход:
De Gea
Ederson
Alisson
Kepa
Lloris
Cech
Schmeichel
Grant
Выход, который я ожидаю:
['De Gea', 'Man Utd', '23', '£5.9']
['Ederson', 'Man City', '43', '£5.7']
['Alisson', 'Liverpool', '39', '£5.6']
['Kepa', 'Chelsea', '36', '£5.5']
['Lloris', 'Spurs', '20', '£5.4']