Независимый экземпляр браузера под тем же профилем пользователя - PullRequest
0 голосов
/ 20 сентября 2019

Я создаю приложение на python, которое использует браузер текущего пользователя для выполнения кода JavaScript.Для этого я создал расширение, предназначенное для работы как в FireFox, так и в Chrome, для облегчения связи между браузером и собственным приложением.

Расширение должно иметь возможность выполнять JavaScript в контексте текущегопрофиль пользователя (не в новом профиле), а работа полностью в фоновом режиме;чтобы не беспокоить пользователя, если он хочет использовать свой веб-браузер во время работы моего приложения.

Расширение вызывается при попытке перейти к предварительно определенному URL-адресу.Эта попытка навигации блокируется, и впоследствии выполняется процедура инициализации расширения.

Мои первоначальные тесты были выполнены в FireFox, и я столкнулся с множеством проблем.

  1. FireFox не будетПозвольте мне встроить другой запущенный экземпляр браузера в качестве подпроцесса, не запуская его в контексте другого профиля пользователя.
  2. FireFox не позволит мне открыть новое окно в скрытом состоянии в контекстезапущенный в данный момент экземпляр.
  3. Если FireFox не работает, позволяет запустить скрытый экземпляр браузера под моим приложением, но не позволяет пользователю самостоятельно создать другой экземпляр (без первого закрытия шахты).

Кроме того, я не верю, что такие решения, как tabs.hide () , являются действительными, так как документация гласит: The current active tab cannot be hidden, что означаетЯ должен был бы создать скрытое окно, и теперь это возвращается к проблеме номер три выше.

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

Самое простое решение - это использование FireFox / Chrome.запустить другой независимый экземпляр браузера под тем же профилем пользователя, но это не представляется возможным.

Есть ли решение моей проблемы, которое бы работало как для FireFox, так и для Chrome, оставаясь при этом перекрестным?платформа?

Спасибо.

Редактировать: Добавлено более подробное объяснение в начало сообщения.

...