puppeteer-extra icon indicating copy to clipboard operation
puppeteer-extra copied to clipboard

puppeteer-extra-plugin-user-preferences settings are replaced by --user-data-dir arguments

Open Thyagarajanc opened this issue 3 years ago • 0 comments

puppeteer-extra-plugin-user-preferences settings are replaced by core puppeteer's--user-data-dir arguments

puppeteer.use(
    require('puppeteer-extra-plugin-user-preferences')({
      userPrefs: {
        download: {
          prompt_for_download: false,
          open_pdf_in_system_reader: true
        },
        plugins: {
          always_open_pdf_externally: true
        }
      }
    })
  );
const browser = await puppeteer.launch({
    headless: false,
    args: ['--user-data-dir=./userDataDir/MT-3KY8_O']
  });

Here no more puppeteer-extra-plugin-user-preferences settings will work.

TO REPRODUCE:

Try to run the below code, the font size will not set to 6. Now try removing user-data-dir argument, font size will be 6.

/* eslint-disable global-require */
const puppeteer = require('puppeteer-extra');
const AdblockerPlugin = require('puppeteer-extra-plugin-adblocker');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');

(async () => {
  puppeteer.use(StealthPlugin());
  puppeteer.use(AdblockerPlugin({ blockTrackers: true }));
  puppeteer.use(require('puppeteer-extra-plugin-anonymize-ua')());
  puppeteer.use(
    require('puppeteer-extra-plugin-user-preferences')({
      userPrefs: {
         webkit: {
              webprefs: {
                default_font_size: 6
              }
            }
      }
    })
  );
  const browser = await puppeteer.launch({
    headless: false,
    args: ['--user-data-dir=./userDataDir/MT-3KY8_O']
  });

  const page = await browser.newPage();
  page._client.send('Page.setDownloadBehavior', {
    behavior: 'allow',
    downloadPath: './pdfDownloaded/'
  });

  await page.goto('https://google.com', { waitUntil: 'networkidle2' });
})();

Thyagarajanc avatar Jul 20 '20 15:07 Thyagarajanc