I use puppeteer-cluster + node js. I have some script. I'm a newbie
The script runs halfway through and then ends and is not executed further. I've been looking for a solution for a week now, I don't understand what's the matter. Help me please enter code here
const { Cluster } = require('puppeteer-cluster-delay');
(async () => {
const cluster = await Cluster.launch({
concurrency: Cluster.CONCURRENCY_CONTEXT,
maxConcurrency: 2,
puppeteerOptions: {headless: false,
},
});
await cluster.task(async ({ page, data: url }) => {
await page.goto('http://www.google.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('1');
await page.goto('http://www.google.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('2');
await page.goto('http://www.google.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('3');
await page.goto('http://www.google.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('4');
await page.goto('http://www.google.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('5');
await page.goto('http://www.nike.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('6');
await page.goto('http://www.google.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('7');
await page.goto('http://www.google.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('8');
await page.goto('http://www.google.com/');
await new Promise(resolve => {
setTimeout(() => { // user is waiting for an asynchronous event
try {
resolve();
} catch (err) {
// handle error
}
}, 5000);
});
await console.log('end');
});
await cluster.queue();
await cluster.queue();
// many more pages
await cluster.idle();
await cluster.close();
})();
the script reaches the 5th iteration and ends ((