Окно продолжает закрываться после запуска селена - PullRequest
1 голос
/ 08 февраля 2020

Каждый раз, когда я запускаю этот код, окно открывается пустым, а затем загружает требуемую страницу в течение примерно 1 секунды перед закрытием.

from selenium import webdriver

driver = webdriver.Chrome('C:/Users/*****/Downloads/chromedriver_win32/chromedriver.exe')
driver.get("https://stackoverflow.com/")

Ошибка возникла один или два раза, сказав [268:10204:0208/163438.782:ERROR:broker_win.cc(55)] Error reading broker pipe: The pipe has been ended. (0x6D), но она появляется иногда, даже если код не изменился.

Есть предложения?

1 Ответ

1 голос
/ 10 февраля 2020

Это сообщение об ошибке ...

ERROR:broker_win.cc(55)] Error reading broker pipe: The pipe has been ended. (0x6D)

... означает, что канал сломан, как если бы сторона браузера была закрыта.

Эта ошибка определена в broker_win. cc в хранилище кода Chromium следующим образом:

Channel::MessagePtr WaitForBrokerMessage(PlatformHandle platform_handle,
                     BrokerMessageType expected_type) {
  char buffer[kMaxBrokerMessageSize];
  DWORD bytes_read = 0;
  BOOL result = ::ReadFile(platform_handle.handle, buffer,
               kMaxBrokerMessageSize, &bytes_read, nullptr);
  if (!result) {
    // The pipe may be broken if the browser side has been closed, e.g. during
    // browser shutdown. In that case the ReadFile call will fail and we
    // shouldn't continue waiting.
    PLOG(ERROR) << "Error reading broker pipe";
    return nullptr;
  }

Основная причина, по которой вы видите эту ошибку, заключается в том, что ChromeDriver контролируется Chrome* Браузер 1014 * обнаружен, а навигация заблокирована.


Решение

В качестве решения вам может потребоваться настроить ChromeDriver / Chrome с определенными конфигурациями, поэтому Селен управляемый Chrome Контекст просмотра не обнаруживается.


Ссылки

Вы можете найдите пару соответствующих подробных обсуждений в:


tl; dr

Сломанная труба ошибка селен вебдрайвер, когда есть разрыв между командами?

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