Python 3 Selenium KeyError:“value”问题不会初始化 Firefox 的 Geckodriver

2024-03-22

我在使用 Python 3 运行 geckodriver 时遇到问题。我最近使用我一直在开发的应用程序切换到 Python 3,并更新了 Firefox(53.0)、Selenium(3.4.3) 和 geckodriver(0.17.1) 。我还使用 OSX 并使用 pip 来安装我的所有软件包。

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

# Set Firefox Settings
# binary = FirefoxBinary('Users/username/Applications/Firefox.app/Contents/MacOS/firefox')
# binary = FirefoxBinary('/Applications/Firefox.app/Contents/MacOS/firefox')
# binary = FirefoxBinary('/Applications/Firefox.app/Contents/MacOS/firefox-bin')

path = '/usr/local/bin/geckodriver'
profile = webdriver.FirefoxProfile()

browser = webdriver.Firefox(executable_path=path,
                        firefox_profile=profile,
                        firefox_binary=binary)

browser.get("http://google.com")

Web 浏览器将启动,但随后我将收到以下错误:

Traceback (most recent call last):
File "/Users/jphubert/Desktop/AbstractionProject/py/browsertest.py", line 11, in <module>
firefox_profile=profile),
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/selenium/webdriver/firefox/webdriver.py", line 155, in __init__
keep_alive=True)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 92, in __init__
self.start_session(desired_capabilities, browser_profile)
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 183, in start_session
self.capabilities = response['value']
KeyError: 'value'

我已经卸载并重新安装了 Firefox 和 geckodriver,并听取了 @Viragos 的建议以确保我安装了 MacOS 版本。 @Debanjan 让我走上了正确的道路,尝试设置 Firefox 二进制文件并将其包含在 webdriver 配置文件中,但我仍然遇到相同的错误。

我尝试从 GitHub 获取 Firefox 二进制文件并将其放入 .py 文件中,并尝试删除配置文件和可执行路径,但同样的问题仍然存在。我的二进制文件位于正确的位置,如果我自己按照路径并单击其 .exe 文件,它就可以工作,但我无法再运行我的脚本。

我在 Python 2.7 上运行 Selenium 没有任何问题,直到昨天升级 gecko 和 Python 后,我才遇到问题。

谢谢你!


更新到 geckodriver 0.17.0 解决了我的问题
火狐浏览器53.0.3
硒3.4.3
Python 3.6

binary = FirefoxBinary('C:\\Program Files (x86)\\Mozilla Firefox\\Firefox.exe')
driver = webdriver.Firefox(firefox_binary=binary) 
driver.get(url)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 3 Selenium KeyError:“value”问题不会初始化 Firefox 的 Geckodriver 的相关文章

随机推荐

  • VB.NET 中的 UploadString(Post 方法)不起作用

    我正在尝试将简单数据发布到某个站点 在本例中发布到本地服务器上的 php 文件 我的 VB NET 代码 Dim W As New Net WebClient Dim A As String W Encoding System Text E
  • Google 如何确定将页面索引为讨论页面? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我正在自己建立一个问答网站 我想让这个网站被Google索引为问答网站或论坛 可以在使用Google中的 讨论 时检索到 根据我的个人经验 当我想获得
  • pymongo:使用 MongoReplicaSetClient 的优点?

    看来两者Mongo客户端 http api mongodb org python current api pymongo mongo client html and MongoReplicaSet客户端 http api mongodb o
  • IOS:停止 NSTimer [重复]

    这个问题在这里已经有答案了 可能的重复 NSTimer 不会停止 https stackoverflow com questions 1031554 nstimer doesnt stop 我有这个代码 NSTimer scheduledT
  • TensorFlow中矩阵乘法函数的使用

    我对这个函数的使用有点困惑tf matmul 在 TensorFlow 中 不过 我的问题可能更多是关于深度学习的理论 假设你有一个输入 X 和权重矩阵 W 假设零偏差 我想将 WX 计算为输出 可以通过以下方式完成tf matmul W
  • 找不到适用于 jdbc:mysql/localhost:3306/world 的驱动程序

    我是这个领域编程的新手 我在驱动程序方面遇到了一些问题 有点 当我直接与客户端一起使用时 MySql 工作正常 问题是我无法将 tomcat 与 MySql 连接 我将所有驱动程序放在 WEB INF lib 中 使用mysql 5 7 t
  • Word 文档的 XML/XSD 验证

    我有一份将不断更新的文档 由文本和表格组成 这些表有两行 第一行包含数字范围 第二行包含单个数字 我想检查第 2 行中的数字是否在第 1 行给出的范围内 我想使用 XML 和 XSD 来执行此操作 我最初的想法是从单词 doc 创建一个 X
  • python-docx 从下拉列表中获取信息(在表中)

    我有一个包含多个表的 docx 文件 我想从列表中的表中获取所有信息 该列表称为 alletabellen 通过下面的脚本 我收到了表格中几乎所有的信息 除了下拉列表中的某些变量的值 在某些表格单元格中 这些单元格的值在我的列表中保持为空
  • 你能避免与 Promise 完全嵌套吗? [复制]

    这个问题在这里已经有答案了 据我了解 Promise 的主要卖点之一是能够编写扁平代码 或者 比回调地狱更扁平 尽管在很多情况下我们似乎需要嵌套 Promise 才能使用闭包 例如 来自q https www npmjs org packa
  • 使用 selenium webdriver 从 Jquery、日期选择器中选择日期

    前往Jquery官网https jqueryui com datepicker https jqueryui com datepicker 不允许单击输入文本 即使它具有唯一的 id datepicker 获取错误元素未找到异常 但当我通过
  • Netbeans:需要在类路径中包含第 3 方目录

    我们有一个在 NetBeans 中开发的应用程序 基于 NetBeans 平台 我们有一个运行时依赖的第 3 方程序 更具体地说 是其他程序 lib 文件夹中的 jar 我们应该如何将其他程序的 jar 包含在我们的类路径中 其他程序制造商
  • Angular ng-submit 未触发所需的控制器方法[重复]

    这个问题在这里已经有答案了 在 Angular 1 4 7 中 我试图在这个 plunk 中实现一个基本的登录表单http plnkr co edit xQEN1ZNN5ZEw1CSwNw97 p preview http plnkr co
  • Javafx:同时多个密钥侦听器

    我正在尝试在 Javafx 中重新创建 Pong 游戏 但我遇到了平台移动的问题 我使用 keylisteners 和 switch 语句来上下移动平台 左边的一个带有 W 和 S 右边的一个带有 Up 和 Down 当我单独按下它们时效果
  • 使用非唯一索引列日期提取 Dask 数据框中的最新值

    我对 pandas 数据帧非常熟悉 但对 Dask 还很陌生 所以我仍在尝试并行化我的代码 我已经使用 pandas 和 pandarallel 获得了我想要的结果 所以我想知道是否可以使用 Dask 扩大任务规模或以某种方式加快速度 假设
  • 如何使用 Windows 中的 log4net xml 配置器使用文件夹位置指定日志文件路径?

    在我的 app config 中我放入
  • ASP.NET MVC:从视图调用控制器方法

    我正在 ASP NET MVC 视图上实现分页 并且我想从视图调用控制器中的方法 视图中的代码 a href gt 控制器方法 public string NextPage string currentPage return int Par
  • 如何获取 RAM 大小、引导加载程序

    我想问如何在引导加载程序中获取总 RAM 大小和可用 RAM 大小 截至目前 我知道如何获得较低的内存 但由于某种原因我无法将其打印到屏幕上 因为它保存在斧头寄存器中 这是我到目前为止所拥有的 BITS 16 BootLoader alwa
  • java编程确定对称词[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我是新来的 但我很难弄清楚如何编写代
  • kubernetes默认自带docker吗

    根据这个link https www docker com kubernetesdocker 支持 Linux Mac 和 Windows 上的 Kubernetes 我无法确定 kubernetes 是否像 swarm 一样安装在 doc
  • Python 3 Selenium KeyError:“value”问题不会初始化 Firefox 的 Geckodriver

    我在使用 Python 3 运行 geckodriver 时遇到问题 我最近使用我一直在开发的应用程序切换到 Python 3 并更新了 Firefox 53 0 Selenium 3 4 3 和 geckodriver 0 17 1 我还