【问题标题】:Selenium under Windows 7 cannot start FirefoxDriver: Can't load profileWindows 7 下的 Selenium 无法启动 FirefoxDriver:无法加载配置文件
【发布时间】:2016-02-02 11:11:07
【问题描述】:

我看到很多类似的问题,就像猛犸垃圾一样古老,它介意 Firefox 22 或类似的东西。我遇到了同样的问题: Can't load the profile. Profile Dir: c:\users\alp\appdata\local\temp\tmprcb81b

Unittest 启动 firefox,成功在 %temp% 中创建配置文件目录,但超时后失败并显示指定的错误消息。我正在使用最新的 Firefox(45.0b 多处理)和 Python 2.7.11

我尝试了什么:

  • 我尝试降级到版本 40.0(单处理)并删除我的配置文件目录。它不起作用。
  • 我尝试将 Selenium 升级到最新版本 (pip install -U selemiun)。 Pip 从 2.5.0 升级到 2.5.1 没有任何影响。
  • 我将日志文件添加到 FirefoxBinary,它甚至不包含 WARN 符号。因此,记录它看起来像 Firefox 正常启动并无任何理由停止。
  • 我尝试删除整个存储库,获取新存储库并重新运行单元测试。
  • 最后我用 Python 2.7.11、git、Firefox 40.0 克隆了 repo 创建了虚拟机并再次开始测试。没有运气。

我对此感到非常生气,并且不知道如何解决此问题。你有吗?

【问题讨论】:

  • 对我来说这看起来像是一个权限问题,但从来没有遇到过。因为它让我的事情变得更容易,所以我从 Cygwin 运行 selenium 服务器,并且配置文件在 (file:///C:/cygwin/tmp/anonymous3765949956426318133webdriver-profile/) 中创建
  • 也许是这个错误:github.com/SeleniumHQ/selenium/issues/1300 这是我在较慢的计算机(Raspberry Pi)上遇到的问题。 Firefox 在硬编码的 30 秒计时器杀死之前无法启动。
  • @Alex 不幸的是没有。我认为联想 E440 对 Firefox 来说已经足够快了。

标签: python firefox selenium


【解决方案1】:

我仍然没有找到解决方案此时,但原因很清楚。在那一刻,Windows 7 x64 下的 Firefox >=44 不支持注入 Selenium 的插件。它可以很容易地检查 - 一旦 Firefox 启动(但对于 selenium 的引擎是不可见的)输入 about:addons 并检查“扩展”选项卡。在旧版本的插件“WebDriver for Firefox”上,刚刚标记为“未签名且有潜在危险”。在较新的版本上,它被禁用。

我目前的解决方法(我不想降级我的主浏览器)是下载 FireFox Portable,把它放在某个地方并用二进制文件实例化驱动程序:

self.driver = webdriver.Firefox(profile,    
    firefox_binary=FirefoxBinary(firefox_path=r'D:\path\to\old\crap\FireFox37\firefox.exe '))

【讨论】:

    猜你喜欢
    • 2014-11-25
    • 2022-06-29
    • 1970-01-01
    • 1970-01-01
    • 2013-08-12
    • 1970-01-01
    • 2016-12-31
    • 1970-01-01
    • 2016-06-25
    相关资源
    最近更新 更多