Как добавить расширение?

  • Автор темы Автор темы alcampo
  • Дата начала Дата начала

alcampo

Client
Регистрация
06.01.2021
Сообщения
192
Реакции
148
Баллы
43
Через кубик расширений выдаёт ошибку:

Код:
Развернуть Свернуть Копировать
Executing action WebBrowserExtensionsof Extension are supported only in Chromium browser engine site:zennolab.com
 
Эта ошибка означает, что в настройках текущего проекта выбран другой тип браузера (вероятнее всего, CEF), а установка расширений технически поддерживается только на полноценном движке Chromium.
 
Эта ошибка означает, что в настройках текущего проекта выбран другой тип браузера (вероятнее всего, CEF), а установка расширений технически поддерживается только на полноценном движке Chromium.

Спасибо за ответ!
Это всё понятно, но движок зеннобраузера хромиум ведь. И в проекте так же хромиум стоит.

Последовательность проекта:
1. Без браузерный запуск
2. Запускается инстанс зеннобраузера (хромиум)
3. Добавляю расширение но выходит эта ошибка.

С обычным хромиум инстансом всё ок.

141547
 
Последнее редактирование:
Через кубик расширений выдаёт ошибку:

Код:
Развернуть Свернуть Копировать
Executing action WebBrowserExtensionsof Extension are supported only in Chromium browser engine site:zennolab.com
Спасибо за ответ!
Это всё понятно, но движок зеннобраузера хромиум ведь. И в проекте так же хромиум стоит.

Последовательность проекта:
1. Без браузерный запуск
2. Запускается инстанс зеннобраузера (хромиум)
3. Добавляю расширение но выходит эта ошибка.

С обычным хромиум инстансом всё ок.

Посмотреть вложение 141547

Штатный функционал Зеннопостера с расширениями, к сожалению, пока не предназначен для режима Интеграции Зеннобраузера. Планируется в последующих версиях Зеннопостера решить это. А пока вы можете работать средствами Зеннобраузера, в нем есть механизм 'Пресетов', в которых вы можете заранее создавать наборы расширений, подключать их к профилям в ЗБ и работать в Зеннопостере с профилями и расширениями. В Справке есть видео по Пресетам: https://docs.zennolab.com/zennobrowser/introduction/zennobrowser-video-course
 
Последнее редактирование:
  • Спасибо
Реакции: alcampo
Через кубик расширений выдаёт ошибку:

Код:
Развернуть Свернуть Копировать
Executing action WebBrowserExtensionsof Extension are supported only in Chromium browser engine site:zennolab.com
Здравствуйте,

Данный кубик работать только с браузером ZP Chromium. Для работы с расширениями в ZB есть свои инструменты: Менеджер пресетов.

Если вам нужно создать новый профиль ZB с расширением через ZP. Вам нужно воспользоваться профилем донором.
Вы сначало в ZB создаете профиль со всеми нужными настройками и пресетами, где уже есть нужные расширения. Затем в кубике ZP выбираете настройку создать профиль используя данные профиля и подставляете ID донора.

141558
 
Здравствуйте,

Данный кубик работать только с браузером ZP Chromium. Для работы с расширениями в ZB есть свои инструменты: Менеджер пресетов.

Если вам нужно создать новый профиль ZB с расширением через ZP. Вам нужно воспользоваться профилем донором.
Вы сначало в ZB создаете профиль со всеми нужными настройками и пресетами, где уже есть нужные расширения. Затем в кубике ZP выбираете настройку создать профиль используя данные профиля и подставляете ID донора.

Посмотреть вложение 141558

Спасибо, разобрался.

Возможно ли вывести менеджмент .crx расширений в пресетах на АПИ? Былоб отлично.
 
  • Спасибо
Реакции: Sergodjan
Здравствуйте,

Данный кубик работать только с браузером ZP Chromium. Для работы с расширениями в ZB есть свои инструменты: Менеджер пресетов.

Если вам нужно создать новый профиль ZB с расширением через ZP. Вам нужно воспользоваться профилем донором.
Вы сначало в ZB создаете профиль со всеми нужными настройками и пресетами, где уже есть нужные расширения. Затем в кубике ZP выбираете настройку создать профиль используя данные профиля и подставляете ID донора.

Посмотреть вложение 141558
А как добавить расширение на уже созданные профили? Появилась необходимость добавить и работать с расширение на множестве профилей уже созданных, как я понимаю, это не реально сделать?
 
А как добавить расширение на уже созданные профили? Появилась необходимость добавить и работать с расширение на множестве профилей уже созданных, как я понимаю, это не реально сделать?

Это можно сделать через API.

Создайте пресет с нужными вам расширениями. Потом получите ID нужного пресета:
C#:
Развернуть Свернуть Копировать
http://localhost:8160/scalar/?api=presetsv1#tag/preset/GET/v1/presets

Потом через метод редактирования профиля, передайте нужный пресет нужным профилям:
C#:
Развернуть Свернуть Копировать
http://localhost:8160/scalar/?api=profilesv1#tag/profiles/PUT/v1/profiles/{profileId}
Параметр: presetId
 
  • Спасибо
Реакции: alcampo и Sergodjan
Это можно сделать через API.

Создайте пресет с нужными вам расширениями. Потом получите ID нужного пресета:
C#:
Развернуть Свернуть Копировать
http://localhost:8160/scalar/?api=presetsv1#tag/preset/GET/v1/presets

Потом через метод редактирования профиля, передайте нужный пресет нужным профилям:
C#:
Развернуть Свернуть Копировать
http://localhost:8160/scalar/?api=profilesv1#tag/profiles/PUT/v1/profiles/{profileId}
Параметр: presetId
Это получилось спасибо.
А как теперь средствами зеннопостера взаимодействовать с расширением?
 
Это получилось спасибо.
А как теперь средствами зеннопостера взаимодействовать с расширением?
Вот с этим есть трудности. В ZP пока нет готовых инструментов по работе с расширениями.
Сейчас пока это можно делать через JS.
 
  • Спасибо
Реакции: alcampo
Можно тогда, хотя бы пару примеров, как с JS открыть расширение и взаимодействовать.
Сделать клик, ввести данные, скопировать данные и так далее.
 
Можно тогда, хотя бы пару примеров, как с JS открыть расширение и взаимодействовать.
Сделать клик, ввести данные, скопировать данные и так далее.
Я делал через ИИ

Вот пример клика:

C#:
Развернуть Свернуть Копировать
// Step 1: Traverse through nested shadow roots to reach the specific element
// Используем ваш точный путь через Shadow DOM
const targetElement = document.querySelector("body > settings-ui").shadowRoot
  .querySelector("#main").shadowRoot
  .querySelector("#privacy > settings-privacy-page-index").shadowRoot
  .querySelector("#siteSettingsImages").shadowRoot
  .querySelector("settings-subpage > settings-category-default-radio-group").shadowRoot
  .querySelector("#disabledRadioOption").shadowRoot
  .querySelector("#borderWrapper");

// Step 2: Check if element exists and perform the action
if (targetElement) {
    // Step 3: Perform the click action
    // Клик по внутреннему borderWrapper всплывет (bubble up) и активирует радио-кнопку
    targetElement.click();
    console.log("Клик успешно выполнен по #borderWrapper");
} else {
    console.error("Элемент не найден. Возможно, структура страницы отличается.");
}

И как это делал:
Наведите мышь на кнопку "Запретить".
[*]Нажмите ПКМ (правую кнопку мыши) -> Просмотреть код (Inspect).
[*]В панели разработчика (Elements) элемент подсветится синим.
[*]Нажмите ПКМ на подсвеченный HTML-код элемента.
[*]Выберите Copy -> Copy JS Path.

В буфер обмена скопируется именно та длинная строка document.querySelector(...).shadowRoot..., которая гарантированно сработает у вас. Вставьте её в консоль и добавьте .click().
Данный путь кормим ИИ и получаем решение
 
  • Спасибо
Реакции: alcampo
С кликами всё понятно, но совершенно не понятно, как вызвать окно расширения, что бы эти клики сделать?
 
По моему по URL Расширения можно делать.
Да в теории управлять можно если открыть веб интерфейс по ссылке chrome-extension://pagbalioeecbpclflgoopepkenhmkhla/popup.html
Остаётся вопрос, как получить id расширения?
 
Да в теории управлять можно если открыть веб интерфейс по ссылке chrome-extension://pagbalioeecbpclflgoopepkenhmkhla/popup.html
Остаётся вопрос, как получить id расширения?
Можно попробовать спарсить с панели управления расширениями, которую можно вызвать урлом: chrome://extensions/
 
Последнее редактирование:
Можно попробовать спарсить с панели управления расширениями, которую можно вызвать урлом: chrome://extensions/
Я проверил, ID расширения вроде не меняется если подгружать пресет. Так что в теории его достаточно получить 1н раз.
 
  • Спасибо
Реакции: Sergodjan
Я проверил, ID расширения вроде не меняется если подгружать пресет. Так что в теории его достаточно получить 1н раз.
Да, если так.
Но иногда оно может меняться.
Тогда вот такой способ открытия окна расширения может помочь.

141593
 

Вложения

Это можно сделать через API.

Создайте пресет с нужными вам расширениями. Потом получите ID нужного пресета:
C#:
Развернуть Свернуть Копировать
http://localhost:8160/scalar/?api=presetsv1#tag/preset/GET/v1/presets

Потом через метод редактирования профиля, передайте нужный пресет нужным профилям:
C#:
Развернуть Свернуть Копировать
http://localhost:8160/scalar/?api=profilesv1#tag/profiles/PUT/v1/profiles/{profileId}
Параметр: presetId
Да, это планируется сделать, конечно же.


Спасибо вам и всей команде зеннолаба за громадную работу :)
 
  • Спасибо
Реакции: Sergodjan и Dmitriy_Zenno

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)