【问题标题】:Puppeteer "TimeoutError: Navigation Timeout Exceeded: 30000ms exceeded" when running from Crontab从 Crontab 运行时,Puppeteer “TimeoutError: Navigation Timeout Exceeded: 30000ms exceeded”
【发布时间】:2020-02-16 03:02:59
【问题描述】:

我有一个 Node.JS 自动化,它使用 Puppeteer 并加载一些 URL 作为过程的一部分。 我的代码非常基本,只使用了包文档中记录的非常基本的功能。

自动化计划每 15 分钟使用 crontab 运行一次,但由于某些原因在运行后运行我面临TimeoutError: Navigation Timeout Exceeded: 30000ms exceeded 错误并且页面未成功加载。 当我手动运行完全相同的代码时,一切正常,页面加载速度非常快。

有人能想到导致这种奇怪行为的原因吗?

谢谢

【问题讨论】:

    标签: node.js cron puppeteer


    【解决方案1】:

    您可以在puppeteer.launch() 之后添加一个选项page.setDefaultNavigationTimeout(0)

        const browser = await puppeteer.launch()
        const page = await browser.newPage()
    
        page.setDefaultNavigationTimeout(0)
    

    希望一切正常。

    【讨论】:

      【解决方案2】:

      发现问题,cron 进程从非常基本的环境变量开始。缺少代码所必需的一些变量,这是造成问题的原因。

      【讨论】:

      • 哪些环境变量?
      • 什么环境变量?
      猜你喜欢
      • 2022-10-14
      • 1970-01-01
      • 2019-08-30
      • 2016-09-13
      • 1970-01-01
      • 2018-08-30
      • 2015-10-29
      • 1970-01-01
      • 2011-06-14
      相关资源
      最近更新 更多