Кукловод "Target Close" вылетает в случайных точкахJavascript

Форум по Javascript
Ответить
Anonymous
 Кукловод "Target Close" вылетает в случайных точках

Сообщение Anonymous »

У меня есть небольшой скрипт-кукловод, который должен сканировать конкретный веб-сайт, получать от него некоторую информацию, перемещаться по нумерации страниц и затем распечатывать данные. Но по какой-то причине каждый раз происходит сбой в случайном месте с этой ошибкой.

Код: Выделить всё

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]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»