selenium.common.exceptions.InvalidSessionIdeException通过Python在无头模式下使用GeckoDriver selenium Firefox

selenium.common.exceptions.InvalidSessionIdeException通过Python在无头模式下使用GeckoDriver selenium Firefox,python,selenium,geckodriver,selenium-firefoxdriver,firefox-headless,Python,Selenium,Geckodriver,Selenium Firefoxdriver,Firefox Headless,我正在尝试使用python和selenium在firefox无头模式下自动化一些案例。我想,我做了我需要的所有设置,但webdrvier仍然没有初始化 我的问题是在执行代码大约30-60秒后获得异常,异常消息不清楚,实际上消息部分是空的。正如您在geckodriver.log firefox上看到的,firefox以无头模式运行 我使用Firefox 56.0.1、python 3.6、selenium 3.141.0。这是我的代码和日志 代码: 日志: 文件“”,第20行,在 文件“C:\Py

我正在尝试使用python和selenium在firefox无头模式下自动化一些案例。我想,我做了我需要的所有设置,但webdrvier仍然没有初始化

我的问题是在执行代码大约30-60秒后获得异常,异常消息不清楚,实际上消息部分是空的。正如您在geckodriver.log firefox上看到的,firefox以无头模式运行

我使用Firefox 56.0.1、python 3.6、selenium 3.141.0。这是我的代码和日志

代码:

日志:

文件“”,第20行,在
文件“C:\Python36\lib\site packages\selenium\webdriver\firefox\webdriver.py”,第174行,在\uuu init中__
使_保持活动状态=真)
文件“C:\Python36\lib\site packages\selenium\webdriver\remote\webdriver.py”,第157行,在\uuu init中__
启动会话(功能、浏览器配置文件)
文件“C:\Python36\lib\site packages\selenium\webdriver\remote\webdriver.py”,第252行,在启动会话中
响应=self.execute(Command.NEW_会话,参数)
文件“C:\Python36\lib\site packages\selenium\webdriver\remote\webdriver.py”,第321行,执行
self.error\u handler.check\u响应(响应)
文件“C:\Python36\lib\site packages\selenium\webdriver\remote\errorhandler.py”,第242行,在check\u响应中
引发异常类(消息、屏幕、堆栈跟踪)
selenium.common.exceptions.InvalidSessionIdeException:消息:
壁虎河原木:

1544600615819   mozrunner::runner   INFO    Running command: "C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe" "-marionette" "-headless" "-foreground" "-no-remote" "-profile" "C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\2\\rust_mozprofile.SDw8B2IEG5cE"
*** You are running in headless mode.
1544600616120   addons.xpi  WARN    Error parsing extensions state: [Exception... "Component returned failure code: 0x80520012 (NS_ERROR_FILE_NOT_FOUND) [amIAddonManagerStartup.readStartupData]"  nsresult: "0x80520012 (NS_ERROR_FILE_NOT_FOUND)"  location: "JS frame :: resource://gre/modules/addons/XPIProvider.jsm :: loadExtensionState :: line 1554"  data: no] Stack trace: loadExtensionState()@resource://gre/modules/addons/XPIProvider.jsm:1554 < getInstallState()@resource://gre/modules/addons/XPIProvider.jsm:1589 < checkForChanges()@resource://gre/modules/addons/XPIProvider.jsm:3109 < startup()@resource://gre/modules/addons/XPIProvider.jsm:2188 < callProvider()@resource://gre/modules/AddonManager.jsm:269 < _startProvider()@resource://gre/modules/AddonManager.jsm:739 < startup()@resource://gre/modules/AddonManager.jsm:906 < startup()@resource://gre/modules/AddonManager.jsm:3090 < observe()@jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/addonManager.js:65
1544600616661   Marionette  INFO    Enabled via --marionette
[Child 2656] WARNING: pipe error: 109: file z:/build/build/src/ipc/chromium/src/chrome/common/ipc_channel_win.cc, line 346
[Child 2656] WARNING: pipe error: 109: file z:/build/build/src/ipc/chromium/src/chrome/common/ipc_channel_win.cc, line 346
1544600618075   Marionette  INFO    Listening on port 64093
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
1544600615819 mozrunner::runner INFO运行命令:“C:\\Program Files(x86)\\Mozilla Firefox\\Firefox.exe”“-marionette”“-headless”“-前台”“-no remote”“-profile”“C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\2\\rust\u mozprofile.SDw8B2IEG5cE”
***您正在无头模式下运行。
1544600616120 addons.xpi WARN Error parsing extensions state:[异常…”组件返回故障代码:0x80520012(NS_Error_FILE_NOT_FOUND)[amiaddonmanager启动.readStartupData]“nsresult:”0x80520012(NS_Error_FILE NOT_FOUND)”位置:“JS frame::resource://gre/modules/addons/XPIProvider.jsm ::loadExtensionState::第1554行“数据:否]堆栈跟踪:loadExtensionState()@resource://gre/modules/addons/XPIProvider.jsm:1554 
你知道我做错了什么吗?谢谢大家!

此错误消息

selenium.common.exceptions.InvalidSessionIdException: Message:
…意味着GeckoDriver无法启动/生成新的网络浏览会话,即Firefox浏览器会话

根据日志消息,geckodriver版本号在启动时不再反映,因此您必须使用:

GeckoDriver版本=>0.22.0(2018-09-15)

但您正在使用:

  • 硒3.141.0
  • Firefox 56.0.1
因此,您的主要问题是所使用的GeckoDriver、Selenium和Firefox二进制文件版本之间的不兼容性


解决方案 如果您使用的是GeckoDriver-Selenium-Firefox组合,则需要遵循以下兼容性图表:


这不是同一个问题。在这个问题上,问题的所有者将firefox设置为无头浏览器,但firefox仍然作为带头的常规浏览器打开,但在我的情况下,没有带头的常规firefox浏览器。如果你能看看我共享的geckodriver.log,你会看到firefox正在无头模式下运行。我的问题是在执行代码大约30-60秒后出现异常。您的评论清楚地表明它不是重复的,并且您的评论从未到达我的收件箱。当您回复特定用户时,请在usename之前添加
@
,以便将评论发送到特定用户的收件箱并提示。重新开始讨论。很抱歉给您带来不便,它起作用了。非常感谢你,但我不明白一件事。我花了很多时间来寻找解决方案,但我没有。我在哪里可以找到关于这些组合的更多信息@DebanjanB@KaanTamersoy我没有一个标准的答案
1544600615819   mozrunner::runner   INFO    Running command: "C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe" "-marionette" "-headless" "-foreground" "-no-remote" "-profile" "C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\2\\rust_mozprofile.SDw8B2IEG5cE"
*** You are running in headless mode.
1544600616120   addons.xpi  WARN    Error parsing extensions state: [Exception... "Component returned failure code: 0x80520012 (NS_ERROR_FILE_NOT_FOUND) [amIAddonManagerStartup.readStartupData]"  nsresult: "0x80520012 (NS_ERROR_FILE_NOT_FOUND)"  location: "JS frame :: resource://gre/modules/addons/XPIProvider.jsm :: loadExtensionState :: line 1554"  data: no] Stack trace: loadExtensionState()@resource://gre/modules/addons/XPIProvider.jsm:1554 < getInstallState()@resource://gre/modules/addons/XPIProvider.jsm:1589 < checkForChanges()@resource://gre/modules/addons/XPIProvider.jsm:3109 < startup()@resource://gre/modules/addons/XPIProvider.jsm:2188 < callProvider()@resource://gre/modules/AddonManager.jsm:269 < _startProvider()@resource://gre/modules/AddonManager.jsm:739 < startup()@resource://gre/modules/AddonManager.jsm:906 < startup()@resource://gre/modules/AddonManager.jsm:3090 < observe()@jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/addonManager.js:65
1544600616661   Marionette  INFO    Enabled via --marionette
[Child 2656] WARNING: pipe error: 109: file z:/build/build/src/ipc/chromium/src/chrome/common/ipc_channel_win.cc, line 346
[Child 2656] WARNING: pipe error: 109: file z:/build/build/src/ipc/chromium/src/chrome/common/ipc_channel_win.cc, line 346
1544600618075   Marionette  INFO    Listening on port 64093
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
JavaScript error: jar:file:///C:/Program%20Files%20(x86)/Mozilla%20Firefox/omni.ja!/components/captivedetect.js, line 352: TypeError: this._runningRequest is null
selenium.common.exceptions.InvalidSessionIdException: Message: