Я новичок в использовании кукловода, и я хочу очистить некоторые данные определенного веб-сайта, но получаю эти предупреждения, и данные не отображаются на консоли.
Почему я получаю следующие предупреждения и как могу ли я избавиться от них?
Вот код, который я использовал:
const puppeteer = require("puppeteer");
(async () => {
// prepare for headless chrome
const browser = await puppeteer.launch();
const page = await browser.newPage();
// set user agent (override the default headless User Agent)
await page.setUserAgent(
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36"
);
// go to website home page
await page.goto("https://www.nytimes.com/");
await page.waitForSelector("body");
// get the User Agent on the context of Puppeteer
const userAgent = await page.evaluate(() => navigator.userAgent);
var rposts = await page.evaluate(() => {
postItems = [];
let posts = document.body.querySelectorAll(".assetWrapper");
posts.forEach((item) => {
try {
title = item.querySelector("h2").innerText;
link = item.querySelector("a").href;
summary = item.querySelector("p").innerText;
postItems.push({ title: title, link: link, summary: summary });
} catch (e) {}
});
var items = {
posts: postItems,
};
return items;
});
// If everything correct then no 'HeadlessChrome' sub string on userAgent
console.log(userAgent);
console.log(rposts);
await browser.close();
})();
вот ошибки, которые я получаю: (узел: 4072) UnhandledPromiseRejectionWarning: ReferenceError: браузер не определен ( узел: 15452) UnhandledPromiseRejectionWarning: ReferenceError: невозможно получить доступ к «странице» перед инициализацией