初始化后浏览器断开连接
browser gets disconnected after initializing
这是我的 node 8.12.0
应用程序中的代码片段:
var browser, page;
//launch browser
(async () => {
browser = await puppeteer.launch({headless: false});
page = await browser.newPage();
})();
//start cron job
cron.schedule('* * * * *', () => {
(async () => {
await page.goto('https://www.mysitedotcom/admin/'); <== cause error
//doing something with web page and db
........
)}();
}); // cron.schedule
(async() => {
browser.close();
})();
cron
作业每分钟触发一次。上面的网页没有打开(goto
没有打开),错误是:
(node:3232) UnhandledPromiseRejectionWarning: Error: Navigation failed because browser has disconnected!
at Connection.NavigatorWatcher._eventListeners.helper.addEventListener (C:\d\code\js\wbot\node_modules\puppeteer\lib\FrameManager.js:1146:117)
browser & page
的启动被特意排除在 cron.schedule
之外,因此只要会话处于活动状态,browser
的一次创建将适用于 cron.schedule
。但问题是 browser
在到达 cron.schedule
时不知何故是 disconnected
。我不明白为什么。我在这里缺少什么?
由于异步性质,这些行几乎立即关闭了浏览器。如果您需要保持浏览器打开,请删除它们或将它们移动到其他地方。
(async() => {
browser.close();
})();
最后你试过await browser.close();
了吗?
这将等待浏览器完全关闭。
这是我的 node 8.12.0
应用程序中的代码片段:
var browser, page;
//launch browser
(async () => {
browser = await puppeteer.launch({headless: false});
page = await browser.newPage();
})();
//start cron job
cron.schedule('* * * * *', () => {
(async () => {
await page.goto('https://www.mysitedotcom/admin/'); <== cause error
//doing something with web page and db
........
)}();
}); // cron.schedule
(async() => {
browser.close();
})();
cron
作业每分钟触发一次。上面的网页没有打开(goto
没有打开),错误是:
(node:3232) UnhandledPromiseRejectionWarning: Error: Navigation failed because browser has disconnected!
at Connection.NavigatorWatcher._eventListeners.helper.addEventListener (C:\d\code\js\wbot\node_modules\puppeteer\lib\FrameManager.js:1146:117)
browser & page
的启动被特意排除在 cron.schedule
之外,因此只要会话处于活动状态,browser
的一次创建将适用于 cron.schedule
。但问题是 browser
在到达 cron.schedule
时不知何故是 disconnected
。我不明白为什么。我在这里缺少什么?
由于异步性质,这些行几乎立即关闭了浏览器。如果您需要保持浏览器打开,请删除它们或将它们移动到其他地方。
(async() => {
browser.close();
})();
最后你试过await browser.close();
了吗?
这将等待浏览器完全关闭。