[英]Selenium Firefox Python running in headless mode Timeout on initializing driver
So everything currently works in non-headless mode.所以目前一切都在非无头模式下工作。 But I need to run this python script in a GUI-less linux server (thus need headless mode).
但我需要在无 GUI 的 linux 服务器中运行这个 python 脚本(因此需要无头模式)。 For some reason, all my attempts to run headlessly results in selenium web driver timing out on initialization.
出于某种原因,我所有无头运行的尝试都会导致 selenium web 驱动程序在初始化时超时。
from selenium import webdriver
geckoDriverFilepath = path + "geckodriver24_32.exe"
opts = webdriver.FirefoxOptions()
opts.add_argument("--headless")
opts.add_argument("--width=2560")
opts.add_argument("--height=1440")
#initialize driver (breaks/timeouts here)
driver = webdriver.Firefox(options=opts,executable_path=geckoDriverFilepath)
The following is the Traceback:以下是回溯:
File "c:\Users\xUser\Desktop\BOMWebService\Backend\code\FirefoxStarter.py", line 51, in StartFirefox driver = webdriver.Firefox(options=opts,executable_path=geckoDriverFilepath)
文件“c:\Users\xUser\Desktop\BOMWebService\Backend\code\FirefoxStarter.py”,第 51 行,在 StartFirefox 驱动程序 = webdriver.Firefox(options=opts,executable_path=geckoDriverFilepath)
File "C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 174, in init keep_alive=True)
文件“C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\firefox\webdriver.py”,第 174 行,在init keep_alive=True)
File "C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in init self.start_session(capabilities, browser_profile)
文件“C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\remote\webdriver.py”,第 157 行,在init self.start_session(capabilities, browser_profile)
File "C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session response = self.execute(Command.NEW_SESSION, parameters)
文件“C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\remote\webdriver.py”,第 252 行,在 start_session 响应 = self.execute(Command.NEW_SESSION,参数)
File "C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute self.error_handler.check_response(response)
文件“C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\remote\webdriver.py”,第 321 行,执行 self.error_handler.check_response(response)
File "C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response raise exception_class(message, screen, stacktrace)
文件“C:\Users\xUser\Desktop\BOMWebService\Backend\virEnvBOMBackend\lib\site-packages\selenium\webdriver\remote\errorhandler.py”,第 242 行,在 check_response 中引发 exception_class(消息、屏幕、堆栈跟踪)
selenium.common.exceptions.WebDriverException: Message: timed out
selenium.common.exceptions.WebDriverException:消息:超时
Any pointers would be much appreciated.任何指针将不胜感激。 Thanks!
谢谢!
This error message...此错误消息...
selenium.common.exceptions.WebDriverException: Message: timed out
...implies that the GeckoDriver was unable to initiate/spawn a new WebBrowser ie Firefox Browser session. ...意味着GeckoDriver无法启动/生成新的WebBrowser ,即Firefox 浏览器session。
Your main issue is the incompatibility between the version of the binaries you are using as follows:您的主要问题是您使用的二进制文件版本之间的不兼容,如下所示:
So there is a clear mismatch between Selenium Client v3.141.0 , GeckoDriver v0.24.0 and the Firefox Browser v60.9.0esr因此Selenium Client v3.141.0 、 GeckoDriver v0.24.0和Firefox Browser v60.9.0esr之间存在明显的不匹配
Test
as a non-root user.Test
。driver.quit()
within tearDown(){}
method to close & destroy the WebDriver and Web Client instances gracefully.tearDown(){}
方法中调用driver.quit()
以优雅地关闭和销毁WebDriver和Web 客户端实例。Here you can find a detailed discussion on Which Firefox browser versions supported for given Geckodriver version?
在这里您可以找到关于给定 Geckodriver 版本支持哪些 Firefox 浏览器版本的详细讨论?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.