Estoy usando node.js y titiritero para obtener algunos datos. Algunos de los archivos que abro son bastante grandes... y luego aparece un error:
Error:
our error { TimeoutError: Navigation Timeout Exceeded: 30000ms exceeded at Promise.then (/project/node_modules/puppeteer/lib/NavigatorWatcher.js:74:21) at <anonymous> name: 'TimeoutError' }¿Cómo puedo ignorarlo o establecer un tiempo de espera más alto?
Ese es mi guion:
await page.goto('url'+tableCell04Val, {waitUntil: 'load'});Puede usar el tiempo de timeout: 0 para deshabilitar los errores de tiempo de espera si está cargando una página pesada.
Úselo en su página. page.goto a Me gusta:
await page.goto('url'+tableCell04Val, {waitUntil: 'load', timeout: 0});#ACTUALIZACIÓN 2019
También puede cambiar el comportamiento de la página desde V1.0.0:
page.setDefaultNavigationTimeout(0);El parámetro es el tiempo de espera en milisegundos.
Referencias: https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md#pagesetdefaultnavigationtimeouttimeout
https://pptr.dev/#?product=Titiritero&show=api-pagesetdefaultnavigationtimeouttimeout
Hay dos métodos para manejar los tiempos de espera en Puppeteer:
a) page.setDefaultNavigationTimeout(timeoutInMiliseconds)
Afecta a las funciones relacionadas con la navegación:
• page.goBack([options]) • page.goForward([options]) • page.goto(url[, options]) • page.reload([options]) • page.setContent(html[, options]) • page.waitForNavigation([options]) b) page.setDefaultTimeout(timeoutInMiliseconds)
Afecta a todas las funciones de navegación anteriores más todas las funciones de Espera:
• page.waitFor(selectorOrFunctionOrTimeout[, options[, ...args]]) • page.waitForFunction(pageFunction[, options[, ...args]]) • page.waitForRequest(urlOrPredicate[, options]) • page.waitForResponse(urlOrPredicate[, options]) • page.waitForSelector(selector[, options]) • page.waitForXPath(xpath[, options]) NOTA : page.setDefaultNavigationTimeout tiene prioridad sobre page.setDefaultTimeout