Спасибо за ответ!Эта ошибка означает, что в настройках текущего проекта выбран другой тип браузера (вероятнее всего, CEF), а установка расширений технически поддерживается только на полноценном движке Chromium.
Через кубик расширений выдаёт ошибку:
Код:Executing action WebBrowserExtensionsof Extension are supported only in Chromium browser engine site:zennolab.com
Штатный функционал Зеннопостера с расширениями, к сожалению, пока не предназначен для режима Интеграции Зеннобраузера. Планируется в последующих версиях Зеннопостера решить это. А пока вы можете работать средствами Зеннобраузера, в нем есть механизм 'Пресетов', в которых вы можете заранее создавать наборы расширений, подключать их к профилям в ЗБ и работать в Зеннопостере с профилями и расширениями. В Справке есть видео по Пресетам: https://docs.zennolab.com/zennobrowser/introduction/zennobrowser-video-courseСпасибо за ответ!
Это всё понятно, но движок зеннобраузера хромиум ведь. И в проекте так же хромиум стоит.
Последовательность проекта:
1. Без браузерный запуск
2. Запускается инстанс зеннобраузера (хромиум)
3. Добавляю расширение но выходит эта ошибка.
С обычным хромиум инстансом всё ок.
Посмотреть вложение 141547
Здравствуйте,Через кубик расширений выдаёт ошибку:
Код:Executing action WebBrowserExtensionsof Extension are supported only in Chromium browser engine site:zennolab.com
Спасибо, разобрался.Здравствуйте,
Данный кубик работать только с браузером ZP Chromium. Для работы с расширениями в ZB есть свои инструменты: Менеджер пресетов.
Если вам нужно создать новый профиль ZB с расширением через ZP. Вам нужно воспользоваться профилем донором.
Вы сначало в ZB создаете профиль со всеми нужными настройками и пресетами, где уже есть нужные расширения. Затем в кубике ZP выбираете настройку создать профиль используя данные профиля и подставляете ID донора.
Посмотреть вложение 141558
Да, такое уже есть:Спасибо, разобрался.
Возможно ли вывести менеджмент .crx расширений в пресетах на АПИ? Былоб отлично.
А как добавить расширение на уже созданные профили? Появилась необходимость добавить и работать с расширение на множестве профилей уже созданных, как я понимаю, это не реально сделать?Здравствуйте,
Данный кубик работать только с браузером ZP Chromium. Для работы с расширениями в ZB есть свои инструменты: Менеджер пресетов.
Если вам нужно создать новый профиль ZB с расширением через ZP. Вам нужно воспользоваться профилем донором.
Вы сначало в ZB создаете профиль со всеми нужными настройками и пресетами, где уже есть нужные расширения. Затем в кубике ZP выбираете настройку создать профиль используя данные профиля и подставляете ID донора.
Посмотреть вложение 141558
Это можно сделать через API.А как добавить расширение на уже созданные профили? Появилась необходимость добавить и работать с расширение на множестве профилей уже созданных, как я понимаю, это не реально сделать?
http://localhost:8160/scalar/?api=presetsv1#tag/preset/GET/v1/presets
http://localhost:8160/scalar/?api=profilesv1#tag/profiles/PUT/v1/profiles/{profileId}
Это получилось спасибо.Это можно сделать через API.
Создайте пресет с нужными вам расширениями. Потом получите ID нужного пресета:
Потом через метод редактирования профиля, передайте нужный пресет нужным профилям:C#:http://localhost:8160/scalar/?api=presetsv1#tag/preset/GET/v1/presets
Параметр: presetIdC#:http://localhost:8160/scalar/?api=profilesv1#tag/profiles/PUT/v1/profiles/{profileId}
Вот с этим есть трудности. В ZP пока нет готовых инструментов по работе с расширениями.Это получилось спасибо.
А как теперь средствами зеннопостера взаимодействовать с расширением?
Я делал через ИИМожно тогда, хотя бы пару примеров, как с JS открыть расширение и взаимодействовать.
Сделать клик, ввести данные, скопировать данные и так далее.
// 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().
Данный путь кормим ИИ и получаем решение
По моему по URL Расширения можно делать.С кликами всё понятно, но совершенно не понятно, как вызвать окно расширения, что бы эти клики сделать?
Да в теории управлять можно если открыть веб интерфейс по ссылке chrome-extension://pagbalioeecbpclflgoopepkenhmkhla/popup.htmlПо моему по URL Расширения можно делать.
Можно попробовать спарсить с панели управления расширениями, которую можно вызвать урлом: chrome://extensions/Да в теории управлять можно если открыть веб интерфейс по ссылке chrome-extension://pagbalioeecbpclflgoopepkenhmkhla/popup.html
Остаётся вопрос, как получить id расширения?
Я проверил, ID расширения вроде не меняется если подгружать пресет. Так что в теории его достаточно получить 1н раз.Можно попробовать спарсить с панели управления расширениями, которую можно вызвать урлом: chrome://extensions/
Да, если так.Я проверил, ID расширения вроде не меняется если подгружать пресет. Так что в теории его достаточно получить 1н раз.
Спасибо. Но постарайтесь внедрить методы из стандартного зеннопостера.Да, если так.
Но иногда оно может меняться.
Тогда вот такой способ открытия окна расширения может помочь.
Да, это планируется сделать, конечно же.Спасибо. Но постарайтесь внедрить методы из стандартного зеннопостера.
Это можно сделать через API.
Создайте пресет с нужными вам расширениями. Потом получите ID нужного пресета:
Потом через метод редактирования профиля, передайте нужный пресет нужным профилям:C#:http://localhost:8160/scalar/?api=presetsv1#tag/preset/GET/v1/presets
Параметр: presetIdC#:http://localhost:8160/scalar/?api=profilesv1#tag/profiles/PUT/v1/profiles/{profileId}
Да, это планируется сделать, конечно же.



