Кукольник "TimeoutError: Превышено время ожидания перехода: превышено 30000 мс" при запуске из Crontab - PullRequest
3 голосов
/ 19 октября 2019

У меня есть автоматизация Node.JS, которая использует Puppeteer и загружает некоторые URL-адреса как часть процесса. Мой код довольно прост и использует только самые основные функции, описанные в документации к пакету.

Запланировано, что автоматизация будет запускаться с помощью crontab каждые 15 минут, но по некоторым причинам после запуска я сталкиваюсь с * 1003. * Ошибка и страница не загружена успешно. Когда я запускаю точно такой же код вручную, все работает хорошо, и страница загружается довольно быстро.

Может кто-нибудь придумать что-нибудь, что может послужить причиной такого странного поведения?

Спасибо

Ответы [ 2 ]

3 голосов
/ 28 октября 2019

Вы можете добавить опцию page.setDefaultNavigationTimeout(0) после puppeteer.launch().

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

    page.setDefaultNavigationTimeout(0)

Надеюсь, это хорошо работает.

2 голосов
/ 30 октября 2019

Нашел проблему, процессы cron начинаются с очень простых переменных env. Некоторые переменные, которые были необходимы для кода, отсутствовали, из-за чего возникла проблема.

...