通过 Selenium 和 Python 调用 webdriver.Remote("http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.CHROME) 时出现 WebDriverException
WebDriverException on invoking webdriver.Remote("http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.CHROME) through Selenium and Python
我很确定这会让人大吃一惊,但我已经遵循了我能找到的所有文档,但我无法摆脱这个错误。我正在设置一个 Selenium 网格(在 Docker 中)并且只有在我不指定远程的情况下才能对 运行 进行测试。这是代码
def setUp(self):
self.browser = webdriver.Remote("http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.CHROME)
FWIW,这工作正常,但在没有 command_executor:
的网格环境中没有用
def setUp(self):
self.browser = webdriver.Chrome()
根据许多来源,包括 https://hackr.io/blog/complete-guide-selenium-webdriver,对 RemoteWebDriver 的调用应该是正确的。
这是错误:
ERROR: test_hackernews_search_for_selenium (__main__.HackerNewsSearchTest)
Traceback (most recent call last):
File "test.py", line 16, in setUp
self.browser = webdriver.Remote("http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.CHROME)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
WebDriverException: Message: None
这个错误信息...
ERROR: test_hackernews_search_for_selenium (__main__.HackerNewsSearchTest)
Traceback (most recent call last):
File "test.py", line 16, in setUp
self.browser = webdriver.Remote("http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.CHROME)
.
WebDriverException: Message: None
...意味着 客户端程序 无法启动新的 WebBrowsing Session 即 Chrome 浏览器 会话。
你的主要问题是Selenium Grid Hub和Selenium Grid Node之间的连接 .
解决方案
确保以下几点:
- Selenium Grid Hub 启动成功。
- Selenium Grid 节点 已在 Selenium Grid Hub
中成功启动和配置
我很确定这会让人大吃一惊,但我已经遵循了我能找到的所有文档,但我无法摆脱这个错误。我正在设置一个 Selenium 网格(在 Docker 中)并且只有在我不指定远程的情况下才能对 运行 进行测试。这是代码
def setUp(self):
self.browser = webdriver.Remote("http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.CHROME)
FWIW,这工作正常,但在没有 command_executor:
的网格环境中没有用def setUp(self):
self.browser = webdriver.Chrome()
根据许多来源,包括 https://hackr.io/blog/complete-guide-selenium-webdriver,对 RemoteWebDriver 的调用应该是正确的。
这是错误:
ERROR: test_hackernews_search_for_selenium (__main__.HackerNewsSearchTest)
Traceback (most recent call last):
File "test.py", line 16, in setUp
self.browser = webdriver.Remote("http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.CHROME)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/usr/local/lib/python2.7/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
WebDriverException: Message: None
这个错误信息...
ERROR: test_hackernews_search_for_selenium (__main__.HackerNewsSearchTest)
Traceback (most recent call last):
File "test.py", line 16, in setUp
self.browser = webdriver.Remote("http://localhost:4444/wd/hub", webdriver.DesiredCapabilities.CHROME)
.
WebDriverException: Message: None
...意味着 客户端程序 无法启动新的 WebBrowsing Session 即 Chrome 浏览器 会话。
你的主要问题是Selenium Grid Hub和Selenium Grid Node之间的连接 .
解决方案
确保以下几点:
- Selenium Grid Hub 启动成功。
- Selenium Grid 节点 已在 Selenium Grid Hub 中成功启动和配置