Python Selenium Remote Webdriver (Chrome Webdriver через Selenium Grid) создан, но не открывает браузер - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть следующие настройки:

  1. Сервер-концентратор Selenium, работающий с "http://localhost:hubPortNum"" (служба с файлом JAR selenium-server-standalone-3.141.5.jar с параметром -role hub).
  2. Узел Selenium при запуске "http://localhost:nodePortNum' (служба с файлом Jar с параметрами: -Dwebdriver.chrome.driver = ChromeWebdriverPath -role узел -port: nodePortNum).
  3. Я проверил URL для экземпляров концентратора и узла, чтобы убедиться, что они работают.

Всякий раз, когда я пытаюсь создать Remote Webdriver через скрипт Python:

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

desiredCapabilities = DesiredCapabilities.CHROME.copy()
chromeOptionsRemote = webdriver.ChromeOptions()
chromeOptionsRemote.add_argument("--start-maximized")
chromeOptionsRemote.add_argument("--disable-session-crashed-bubble")

initRemoteDriver = webdriver.Remote(options=chromeOptionsRemote, command_executor='http://127.0.0.1:<nodePortNum>/wd/hub', desired_capabilities=desiredCapabilities)
print(initRemoteDriver.current_url)

Последняя строка выводит текущий URL (который является «data :,»), это означает, что Webdriver создан.

Но браузер не открывается на моей локальной машине, то есть он работает в фоновом режиме, и я не знаю, как сделать его видимым, хотя он работал в прошлом.

Шаги по устранению неполадок, которые я сделал:

  1. Переустановите последнюю версию пакета selenium python.
  2. Повторно загрузите последний файл jar сервера Selenium.
  3. Обновление Chrome.
  4. добавление chromeOptionsRemote.add_argument ("- без песочницы")
  5. Убедитесь, что локальный Webdriver действительно открывается: Это строка:

    self.localDriver = webdriver.Chrome(options=chromeOptionsLocal, 
    desired_capabilities=desiredCapabilities)
    

    открывает браузер локально (Chromedriver находится в пути).

После того, как я выполнил эти шаги по устранению неполадок, я попробовал ту же конфигурацию на удаленном сервере и получил тот же результат (браузер не виден), поэтому я думаю, что это, вероятно, из-за дизайна.

какую конфигурацию я должен создать, чтобы браузер был виден?

Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 30 ноября 2018

Я запускал JAR-файл Always-Up: https://www.coretechnologies.com/products/AlwaysUp/

Проблема была связана с изоляцией сеанса 0: https://stackoverflow.com/a/26752251/2710840

, чтобы не запускать приложение в сеансе 0, я включил функцию автологона: enter image description here

определил пользователя в приложении, запущенного как мой пользователь: enter image description here

и запустил приложение из контекстного меню с возможностью: «перезапустить в этом сеансе»

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...