Документация 0.4 Справочник действий

Выбрать в списке

browser.selectOption · Браузер

Выбирает вариант в выпадающем списке (select) по значению или видимому тексту

Выбирает вариант в выпадающем списке страницы (<select>): город, тип заявки, валюту.

Свойства #

Свойство Имя в файле Значение Обязательное По умолчанию Описание
Селектор selector селектор страницы да — Селектор Playwright: CSS (#id, .class), text=Войти, xpath=//button, role=button[name="OK"]
Значение value текст да — Значение (value) или видимый текст варианта, напр. Бишкек
Таймаут, мс timeoutMs число нет 10000
Сессия session текст нет main Имя сессии браузера (по умолчанию main); несколько сессий — несколько окон

Результат #

Действие не возвращает значений.

Как работает #

  • Селектор (selector) — селектор Playwright: CSS (#fio, .btn-primary, input[name="phone"]), текст (text=Войти), роль (role=button[name="Отправить"]), XPath (xpath=//table/tr[2]). Как найти селектор — Пикер элементов. Селектор указывает на сам select.
  • Значение (value) — значение варианта (value в HTML) или его видимый текст: Бишкек, {{ city }}. Пробелы по краям отбрасываются.
  • Таймаут, мс (timeoutMs, по умолчанию 10000) — сколько ждать, пока элемент появится и станет доступным.
  • Сессия (session, по умолчанию main) — имя окна браузера, открытого browser.open. Нужно, только если процесс работает с несколькими окнами сразу.

Ошибки #

Код Причина и что делать
InvalidArgument В списке нет такого варианта — сообщение перечисляет доступные (до 15); элемент — не select
ElementNotFound Элемент не найден за время ожидания — проверьте селектор в инструментах разработчика браузера (F12) и что открыта нужная страница
Timeout Элемент найден, но не стал доступным (скрыт, перекрыт, неактивен)
InvalidArgument Селектор находит несколько элементов — уточните его (например, добавьте >> nth=0); селектор с ошибкой синтаксиса
BrowserError Сессия не открыта (нет шага browser.open перед этим) или окно браузера закрыли

При ошибке робот сохраняет снимок страницы: в студии — ссылка «Открыть скриншот» в «Лог», в оркестраторе — на странице задания.

Пример #

{ "type": "browser.selectOption", "props": { "selector": "#city", "value": "{{ city }}" } }