selenium.common.exceptions.WebDriverException: Сообщение: недопустимый аргумент: значение должно быть неотрицательным целым числом с ChromeDriver и Selenium - PullRequest
0 голосов
/ 01 октября 2019

Я работаю над селеном (3.5.0), Python 3.6.8. Я хотел протестировать простой код, который написан ниже

driver.implicitly_wait(10)
driver.get(url)
print(driver.title)
sleep(6)
driver.close()

, но он выдает ошибку, т.е. selenium.common.exceptions.WebDriverException: Message: invalid argument: value must be a non-negative integer Я некак я ошибся

Я нашел похожую проблему, поднятую кем-то на этой платформе, но моя проблема не была решена, пожалуйста, помогите мне в этом отношении

1 Ответ

4 голосов
/ 01 октября 2019

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

selenium.common.exceptions.WebDriverException: Message: invalid argument: value must be a non-negative integer

... означает, что ChromeDriver не смог инициировать / порождать новый WebBrowser т.е. Браузер Chrome сеанс.


Ваша основная проблема заключается в несовместимости между версиями используемых вами двоичных файлов следующим образом:

  • Предположительновы используете самую последнюю версию chromedriver = 77.0
  • Предположительно, вы используете хром = 77.0 .
  • Ваш клиент Selenium версияэто 3.6.8 , что является древним.

Таким образом, существует явное несоответствие между Selenium Client v3.6.8 , ChromeDriver v77.0 и Chrome Browser v77.0


Решение

Убедитесь, что:

  • Селен обновлен до текущих уровней Версия 3.141.59 .
  • ChromeDriver обновлен до текущего ChromeDriver v77.0 уровня.
  • Chrome обновлен до текущей версии Chrome 77.0 . (согласно примечаниям к выпуску ChromeDriver v77.0 )
  • Очистка вашего Рабочего пространства проекта через IDE и Перестройте ваш проект только с необходимыми зависимостями.
  • Если ваша базовая версия Web Client устарела, удалите ее и установите последнюю версию GA и выпущенную версию WebКлиент .
  • Выполните перезагрузку системы .
  • Выполните @Test как пользователь без полномочий root .
  • Всегда вызывайте driver.quit() в методе tearDown(){}, чтобы закрыть и уничтожить экземпляры WebDriver и Web Client изящно.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...