Как запустить селен или кукловод в существующем браузере REAL - PullRequest
0 голосов
/ 19 мая 2018

Я не хочу запускать простой новый браузер, который используется для тестирования.Мне нужно открыть новую вкладку в моем реальном браузере Chrome со всеми доступными закладками и расширениями.Пожалуйста, предоставьте короткий фрагмент кода.Спасибо

1 Ответ

0 голосов
/ 20 мая 2018

Если браузер не был открыт браузером, это невозможно

Однако, используя puppeteer, вы можете запустить локально установленный Chrome с закладками и профилем:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch({
    headless: false,
    executablePath: "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe",
    args: ['--user-data-dir=C:/Users/USER/AppData/Local/Google/Chrome/User Data/']
  }); 
  const page = await browser.newPage();
})();

Расположение исполняемого файла Chrome и каталога пользовательских данных можно найти здесь: chrome://version/ (оканчивается на «Данные пользователя»).


Использование расширений - обманщик битов:

По умолчанию Puppeteer отключает расширения при запуске Chrome .Вы можете загрузить определенное расширение, используя:

const browser = await puppeteer.launch({
  headless: false,
  args: [
    '--disable-extensions-except=/path/to/extension/',
    '--load-extension=/path/to/extension/',
  ]
});

Или вы можете изменить значения по умолчанию:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch({
    headless: false,
    executablePath: "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe",
    ignoreDefaultArgs : true,
    args:
    [
      '--user-data-dir=C:/Users/USER/AppData/Local/Google/Chrome/User Data/',
      '--disable-background-networking',
      '--disable-background-timer-throttling',
      '--disable-client-side-phishing-detection',
      '--disable-default-apps',
      '--disable-dev-shm-usage',
      // '--disable-extensions',
      '--disable-hang-monitor',
      '--disable-popup-blocking',
      '--disable-prompt-on-repost',
      '--disable-sync',
      '--disable-translate',
      '--metrics-recording-only',
      '--no-first-run',
      '--safebrowsing-disable-auto-update',
    ]
  }); 
  const page = await browser.newPage();
})();
...