Спасибо за ответ!Эта ошибка означает, что в настройках текущего проекта выбран другой тип браузера (вероятнее всего, 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н раз.


