@Nordihan

Почему окна Selenium закрываются при обращении из другой вьюхи Django?

Stack:
  • Python2.7
  • Selenium 3.13.0
  • Django 1.11.18

Версия chromedriver рабочая, скопирована из другого действующего проекта.

Из первой вьюхи создаётся инстанс Selenium в котором происходит авторизация на внешнем сайте, этот сайт отправляет код авторизации на почту.

self.driver = SeleniumSession(display='xephyr').driver
...
def __init__(self, display=None,
                 close_display_after_process=True,
                 driver=None, close_driver_after_process=True)
    self.display = display


В респонсе я отправляю пользователю command_executor._url и session_id селениума (не закрывая его окно, оно продолжает работать), чтобы отправить их в реквесте на другую вьюху (другой url) вместе с кодом авторизации из почты и обратиться к существующему инстансу селениума через webdriver.Remote(command_executor._url, {}).

self.same_driver = webdriver.Remote(str(request_data.get('executor')), {})


Пока первая вьюха жива - новое окно через webdriver.Remote создаётся без проблем, (как внутри дебаггера, так и с Python Console), но как только я пытаюсь сделать то же самое из другой вьюхи - все окна селениума закрываются с ошибкой в консоли:

<urlopen error [Errno 111] Connection refused>

Такая же ошибка выводится, если в чистом окружении выполнить webdriver.Remote() без параметров, либо передать неправильную/недействительную url-строку command_executor.

ЧЯДНТ?
  • Вопрос задан
  • 43 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы