puppeteer - первый звонок в browser.newPage супер медленный - PullRequest
0 голосов
/ 13 марта 2020

Использование puppeteer@2.1.1

Первый вызов browser.newPage () занимает много времени (около 5 секунд), после чего все новые страницы появляются примерно за 50 мс

const puppeteer = require('puppeteer');

(async () => {
    console.time('Browser');
    const browser = await puppeteer.launch({
        headless: true,
        args: [
            '--headless',
            '--hide-scrollbars',
            '--mute-audio',
            '-no-sandbox'
        ]
    });
    console.timeEnd('Browser');

    console.time('Incognito');
    let context  = await browser.createIncognitoBrowserContext();
    console.timeEnd('Incognito');

    console.time('Page');
    let page = await context.newPage('https://wl.postando.de/preview-front/432');
    console.timeEnd('Page');

    console.time('Page 1');
    page = await browser.newPage();
    console.timeEnd('Page 1');

    console.time('Page 2');
    page = await browser.newPage();
    console.timeEnd('Page 2');

    console.time('goto')
    await page.goto('https://www.google.com', {waitUntil: 'domcontentloaded'});
    console.timeEnd('goto');

    console.time('Generate')
    await page.pdf({
        path: 'hn.pdf',
        format: 'letter'
        });
    console.timeEnd('Generate');

    await browser.close();
})();

Выход:

Браузер: 107,656мс

Инкогнито: 1,247мс

Страница: 5147,028мс

Страница 1: 35,273мс

Страница 2: 36,787мс

Перейти: 773,726мс

Генерировать: 78,117мс

1 Ответ

0 голосов
/ 13 марта 2020

Нашли решение - используйте xvfb-run

xvfb-run --server-args="-screen 0 1024x768x24" node pdf.js

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...