Мой код не запускается, когда кукловод свернут - PullRequest
1 голос
/ 27 сентября 2019

У меня есть следующий код, который хорошо работает, если я поместил развернутое окно навигации, но когда я свернул его, оно перестало работать.

Подробнее:

"scrollDown & scrollTop"функции перестают выполняться, когда окно свернуто.

'use strict'

const puppeteer = require('puppeteer-core');

const lauchpuppeteer = async () => {
  const browser = await puppeteer.launch({
    defaultViewport: null,
    headless: false,
    userDataDir: `${obj.id}`,
    args: [`--app=${url}`, 
    '--disable-background-timer-throttling',
    '--disable-backgrounding-occluded-windows',
    '--disable-renderer-backgrounding',
    '--no-sandbox']
  });
  const [page] = await browser.pages()
  await page.waitForNavigation();
  await scrollDown(page);
  await page.waitFor(5000);
  await scrollTop(page);

  if (await page.$('li.inline.t-24.t-black.t-normal.break-words') !== null)
    fullname = await page.$eval('li.inline.t-24.t-black.t-normal.break-words', el => el.innerText.replace(/\s+/g, ' ').trim());
  else console.log('The Full Name was not found.'.red);

  }

const scrollTop = async (page) => {
  await page.evaluate(_ => {
    window.scrollTo(0, 0);
  });
}

const scrollDown = async (page) => {
  await page.evaluate(async () => {
    await new Promise((resolve, reject) => {
      var totalHeight = 0;
      var distance = 50;
      var timer = setInterval(() => {
        var scrollHeight = document.body.scrollHeight;
        window.scrollBy(0, distance);
        totalHeight += distance;
        if (totalHeight >= scrollHeight) {
          clearInterval(timer);
          resolve();
        }
      }, 100);
    });
  });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...