Открыть браузер / Open browser
Группа действий: Браузеры
Данное действие предназначено для открытия выбранного браузера. В момент открытия браузера создается контекст.
Настройки
Свойство | Англ. наименование | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
---|---|---|---|---|---|
Параметры | |||||
Браузер | Browser | Браузер, который необходимо открыть. По умолчанию Chrome. Выпадающий список:
| Строка | Yandex | Нет |
Свойства | Advanced settings | Список свойств браузера и их значений, которые будут установлены при запуске браузера. В JSON формате, описывающий список свойств браузера и их значений, которые будут установлены при запуске. Если параметр заполнен, его значения имеют преимущества перед значениями остальных полей. Подключить расширения и задать профиль можно через этот параметр | Строка | JSON по шаблону | Нет |
Время явного ожидания | Time out | Время на ожидание изменения свойств отдельных элементов. Задается предельное значение времени ожидания для использования по умолчанию в действиях группы, определяющее время доступа к элементам. Измеряется в миллисекундах. | Число | 10000 | Нет |
Фоновый режим | Background mode | Открытие в невидимом режиме. Internet Explorer не поддерживает данную настройку | Логический | false | Нет |
Адрес | URL | URL, по которому должен быть выполнен переход после открытия браузера. | Строка | https://yandex.ru/ | Нет |
Сохранить в | Save to | Путь к папке, в которую должны сохраняться файлы при загрузке | Robin.FolderPath | C:\doc\img | Нет |
Результаты | |||||
Контекст | Context | Контекст открытого сеанса работы с браузером, к которому будут обращаться дальнейшие действия. Экземпляр браузера, с которым будет работать Selenium. | Контекст сеанса работы с браузером | Контекст браузера |
Особые условия использования
Пример заполнения поля "Свойства" (заполнено автоматически, путем записи действий в Recorder).
{"acceptInsecureCerts":true,"browserName":"chrome","goog: loggingPrefs":{"browser":"ALL"},"timeouts":{"implicit":0,"pageLoad":300003,"script":30003},"unhandledPromptBehavior":"dismiss","goog:chromeOptions":{"args":["disable-popup-blocking","disable-notifications","no-sandbox"],"extensions":[]}}
Свойства браузера выглядят примерно следующим образом:
{"acceptInsecureCerts":true,
"browserName":"chrome",
"goog: loggingPrefs":{"browser":"ALL"},
"timeouts":{"implicit":0,"pageLoad":300003,"script":30003},
"unhandledPromptBehavior":"dismiss",
"goog:chromeOptions":{"args":["disable-popup-blocking","disable-notifications","no-sandbox","--disable-blink-features=AutomationControlled"],"extensions":[]}}
Примечание: В путях до папок/файлов обратный слэш обязательно нужно экранировать (С:\\Users\\User или С:/Users/User ).
Большинство возможностей доступно через объект ChromeOptions (выделены в свойствах жирным начертанием). Он используется для управления различными свойствами драйвера браузера. Поэтому данный объект интересует нас в бОльшей степени.
Обозначается следующим образом:
"goog:chromeOptions":{"Опция 1": Значение 1, "Опция 2": Значение 2}.
Значений опций могут быть следующих типов:
- Строка – "text"
- Список строк – ["text1", "text2"]
- Словарь - {"key1": "value1","key2": "value2"}
- Логический тип – false/true
В примере, в самом начале текста, использованы опции «args» и «extensions». Весь список опции объекта ChromeOptions представлен в таблице. Зеленым выделены наиболее часто используемые.
Имя опции | Тип | По умолчанию | Описание опции |
args | Список строк |
| Список аргументов командной строки, используемых при запуске Chrome. Аргументы со связанным значением должны быть разделены знаком '=' (например, ‘args’ : ['start-maximized', 'user-data-dir=C:/Users/User/AppData/Local/Google/Chrome/User Data/Default']). Список аргументов Chrome приведен здесь. (https://peter.sh/experiments/chromium-command-line-switches/) |
binary | Строка |
| Путь к исполняемому файлу Chrome для использования |
extensions | Список строк |
| Список расширений Chrome для установки при запуске. Каждый элемент в списке должен иметь упакованное расширение Chrome в кодировке base-64 (.crx) |
localState | Словарь |
| Словарь с каждой записью, состоящей из названия предпочтения и его значения. Эти установки применяются к файлу локального состояния в папке пользовательских данных. |
prefs | Словарь |
| Словарь с каждой записью, состоящей из названия предпочтения и его значения. Эти настройки применяются только к используемому профилю пользователя. Примеры см. в файле «Preferences» в каталоге пользовательских данных Chrome (C:\Users\{User}\AppData\Local\Google\Chrome\User Data\{GoogleUser}). |
detach | Логический тип | false | Если значение равно false, Chrome будет закрыт, когда ChromeDriver будет убит, независимо от того, завершен ли сеанс. Если значение равно true, Chrome будет закрыт только в том случае, если сеанс завершен (или закрыт). Обратите внимание, что если значение равно true и сеанс не завершен, ChromeDriver не сможет очистить каталог временных данных пользователя, используемый запущенным экземпляром Chrome. |
debuggerAddress | Строка |
| Адрес сервера отладчика Chrome для подключения в виде <hostname/ip:port>, например '127.0.0.1:38947' |
excludeSwitches | Список строк |
| Список переключателей командной строки Chrome, чтобы исключить передачу ChromeDriver по умолчанию при запуске Chrome. Указывать свитчи без префикса --. |
minidumpPath | Строка |
| Каталог для хранения мини-дампов Chrome. (Поддерживается только в Linux.) |
mobileEmulation | Словарь |
| Словарь со значением "deviceName" или значениями для "deviceMetrics" и "userAgent". Дополнительные сведения см. в разделе Эмуляция мобильных устройств. https://chromedriver.chromium.org/mobile-emulation
Пример: "mobileEmulation": {"deviceName": "iPhone 12 Pro"} |
windowTypes | Список строк |
| Список типов окон, которые будут отображаться в списке дескрипторов окон. Для доступа к элементам <webview> включите в этот список "webview". |
Пример использования
Задача: открыть выбранный браузер на заданной странице, получить контекст действия для работы с действиями группы "Браузеры".
Решение: воспользоваться действием "Открыть браузер".
Реализация:
- Открыть группу действий "Браузеры"
- Открыть подгруппу "Окна, вкладки, фреймы"
- Добавить действие "Открыть браузер" на рабочую область.
- Настроить параметры действия.
Настройка параметров действия:
а) Поле "Браузер". Выбрать браузер из выпадающего списка, который необходимо открыть.
б) Поле "Свойства". Указать файл в формате JSON по шаблону, который задаст приоритетные свойства для запуска браузера.
в) Поле "Время явного ожидания". Установить тайм-аут по времени - 1000мс.
г) Поле "Фоновый режим". Значение "True" or "False". Оставить "False", что бы браузер открылся в видимом режиме.
д) Поле "Адрес". Указать URL-адрес, по которому перейдет открывшийся браузер - https://yandex.ru/
е) Поле "Сохранить в". Указать адрес на ПК, куда сохраняться файлы, скачанные если в параметре "Адрес" будет указана ссылка на скачивание.
5. Добавить действие "Закрыть браузер" на рабочую область. Заполнить параметр "Контекст".
6. Запустить робота по кнопке "Старт" в верхней панели.
Результат: в видимом режиме был открыть браузер Edge, и был выполнен переход на страницу https://yandex.ru/