Anonymous
Кукловод "Target Close" вылетает в случайных точках
Сообщение
Anonymous » 16 янв 2025, 17:19
У меня есть небольшой скрипт-кукловод, который должен сканировать конкретный веб-сайт, получать от него некоторую информацию, перемещаться по нумерации страниц и затем распечатывать данные. Но по какой-то причине каждый раз происходит сбой в случайном месте с этой ошибкой.
Код: Выделить всё
import puppeteer from "puppeteer";
(async () => {
const browser = await puppeteer.launch({ headless: false });
const page = await browser.newPage();
page.setDefaultNavigationTimeout(10 * 60 * 1000);
await page.goto("https://.../");
await page.setViewport({ width: 1080, height: 1024 });
function delay(time) {
return new Promise(function(resolve) {
setTimeout(resolve, time)
});
}
const extractDataFromPage = async () => {
// Select all question containers
const containers = await page.$$("#examQuestions > .container");
for (const container of containers) {
try {
const question = await container.$eval("#questionText", (el) =>
el.textContent.trim()
);
const answers = await container.$$eval(
".answers-container .answer-box",
(answerBoxes) => answerBoxes.map((box) => box.textContent.trim())
);
const correctAnswerIndex = await container.$eval(
"#answersbutton button[data-correct-answer]",
(button) => parseInt(button.getAttribute("data-correct-answer"), 10)
);
const correctAnswer = answers[correctAnswerIndex - 1];
const imageSrc = await container
.$eval(".image-container img", (img) => img.getAttribute("src"))
.catch(() => null);
const imageURL = imageSrc ? `https:/.../${imageSrc}` : null;
console.log({
question,
answers,
correctAnswer,
imageURL,
});
} catch (error) {
console.error("Error processing container:", error);
}
}
await delay(5000)
};
// Process each page
const totalPages = 55;
for (let currentPage = 1; currentPage
Подробнее здесь: [url]https://stackoverflow.com/questions/79361923/puppeteer-target-close-crash-at-random-points[/url]
1737037157
Anonymous
У меня есть небольшой скрипт-кукловод, который должен сканировать конкретный веб-сайт, получать от него некоторую информацию, перемещаться по нумерации страниц и затем распечатывать данные. Но по какой-то причине каждый раз происходит сбой в случайном месте с этой ошибкой. [code]import puppeteer from "puppeteer"; (async () => { const browser = await puppeteer.launch({ headless: false }); const page = await browser.newPage(); page.setDefaultNavigationTimeout(10 * 60 * 1000); await page.goto("https://.../"); await page.setViewport({ width: 1080, height: 1024 }); function delay(time) { return new Promise(function(resolve) { setTimeout(resolve, time) }); } const extractDataFromPage = async () => { // Select all question containers const containers = await page.$$("#examQuestions > .container"); for (const container of containers) { try { const question = await container.$eval("#questionText", (el) => el.textContent.trim() ); const answers = await container.$$eval( ".answers-container .answer-box", (answerBoxes) => answerBoxes.map((box) => box.textContent.trim()) ); const correctAnswerIndex = await container.$eval( "#answersbutton button[data-correct-answer]", (button) => parseInt(button.getAttribute("data-correct-answer"), 10) ); const correctAnswer = answers[correctAnswerIndex - 1]; const imageSrc = await container .$eval(".image-container img", (img) => img.getAttribute("src")) .catch(() => null); const imageURL = imageSrc ? `https:/.../${imageSrc}` : null; console.log({ question, answers, correctAnswer, imageURL, }); } catch (error) { console.error("Error processing container:", error); } } await delay(5000) }; // Process each page const totalPages = 55; for (let currentPage = 1; currentPage Подробнее здесь: [url]https://stackoverflow.com/questions/79361923/puppeteer-target-close-crash-at-random-points[/url]