Краткий ответ: это невозможно
Chrome позволяет запускать браузер только в режиме без головы или без головы .Вы должны указать его при запуске браузера, и переключение во время выполнения невозможно.
Что возможно, так это запустить второй браузер и повторно использовать файлы cookie (и любые другие данные) из первого браузера.
Длинный ответ
Можно предположить, что вы можете просто повторно использовать каталог данных при вызове puppeteer.launch
, но в настоящее время это невозможно из-за множества ошибок ( # 1268 , # 1270 в репо кукловода).
Таким образом, наилучшим подходом является сохранение любых файлов cookie или данных локального хранилища, которые вам нужныделиться между экземплярами браузера и восстанавливать данные при запуске браузера.Затем вы посещаете веб-сайт во второй раз.Имейте в виду, что любое состояние, которое имеет веб-сайт с точки зрения переменной JavaScript, будет потеряно при повторном просмотре страницы.
Процесс
Подводя итог, весь процесс должен выглядеть следующим образом (или наоборот)без головы до головы):
- Сканирование в режиме без головы до тех пор, пока вы не захотите переключить режим
- Сериализация файлов cookie
- Запуск или повторное использованиевторой браузер (в автономном режиме)
- Восстановление файлов cookie
- Пересмотреть страницу
- Продолжить сканирование