Селениум на старте начал подвисать

Причем такой плавающий глюк. То пускается весь день нормально. То висит и все. Поставил на вторую машину. Вроде все заработало. Просыпаюсь с утра - обе тачки висят не могут пустить селениум. Ну и происходит это на:

  File "/home/myname/.venv/lib/python3.11/site-packages/selenium/webdriver/common/selenium_manager.py", line 134, in run
    completed_proc = subprocess.run(args, capture_output=True)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/subprocess.py", line 550, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/subprocess.py", line 1207, in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/subprocess.py", line 2059, in _communicate
    ready = selector.select(timeout)
            ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/selectors.py", line 415, in select
    fd_event_list = self._selector.poll(timeout)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
KeyboardInterrupt

И вот сегодня я наконец-то смог дождаться сообщения об ошибке

Problem reading geckodriver versions: error sending request for url (https://raw.githubusercontent.com/SeleniumHQ/selenium/trunk/common/geckodriver/geckodriver-support.json): operation timed out. Using latest geckodriver version

после чего селениум нормально стартанул и заработал.

То есть получается он в одно и то же время зачем-то пытается куда-то что-то отослать чтоли? со всех тачек на которых запущен? или не может прочесть? fd_event_list это разве не file descriptor? что это вообще такое? встречался кто-то с подобным? чего еще от него можно ожидать? и как это все разузнать получше? гугл как-то не блеснул знаниями.


Ответы (1 шт):

Автор решения: cordon ballas

Насколько я понял geckodriver при запуске может производить сверку версий, т.к. по указанному в сообщении об ошибке адресу находится json с версиями geckodriver.

Данный адрес был недоступен поэтому селениум и подвисал одновременно на разных машинах. Остается выяснить значение этого таймаута.

→ Ссылка