python+selenium3+firefox中使用ActionChains双击等鼠标事件操作报错,但是其它谷歌、ie等浏览器均正常。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python+selenium3+firefox中使用ActionChains双击等鼠标事件操作报错,但是其它谷歌、ie等浏览器均正常。相关的知识,希望对你有一定的参考价值。

报错提示:
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: POST /session/ef1c5417-37aa-4fe6-a377-f222ce9f357d/moveto did not match a known command

这是Mozilla/geckodriver的一个bug,由于geckodriver开发是2016年中旬的,所以只能这对firefox47或者更老的版本使用,如果你要使用selenuym3+firefox,请使用较老版本的firefox。或者你可以尝试考虑selenuym3+chrome。 参考技术A 我也遇到这个问题,搞不定

如何为 Firefox 设置 Selenium Python 环境

【中文标题】如何为 Firefox 设置 Selenium Python 环境【英文标题】:How to set up a Selenium Python environment for Firefox 【发布时间】:2017-07-01 11:43:03 【问题描述】:

我正在使用 Firefox 50、Selenium 3、Python 3.5。我尝试了很多二进制文件并在环境变量 PATH 中复制 geckodriver 等。

【问题讨论】:

1.在您的机器上下载并安装 Firefox(如果您还没有这样做的话)。 2. 在命令行中运行pip install selenium(如果您还没有这样做的话)。 3. 编写你的代码。 【参考方案1】:

测试机应该有 Selenium v​​. 3.0.2、Firefox v. 51.0.1(最新版本)和 geckodriver v. 0.14。如果您使用的是 Linux,请执行以下步骤:

[查找latest release on GitHub (or from the API) 并用它替换 wget 链接。下载和安装过时的版本可能会导致“错误”行为。]

apt-get update
apt-get install firefox
pip3 install selenium==3.0.2
wget https://github.com/mozilla/geckodriver/releases/download/vX.XX.0/geckodriver-vX.XX.0-linuxXX.tar.gz -O /tmp/geckodriver.tar.gz \
  && tar -C /opt -xzf /tmp/geckodriver.tar.gz \
  && chmod 755 /opt/geckodriver \
  && ln -fs /opt/geckodriver /usr/bin/geckodriver \
  && ln -fs /opt/geckodriver /usr/local/bin/geckodriver

从可用的压缩预构建二进制文件中选择适合您操作系统的版本。

这是一个运行示例:

from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://google.com')
print(driver.title)
driver.quit()

【讨论】:

【参考方案2】:

据我了解,您希望使用 Python 进行开发,使用 Selenium 库并使用 Firefox 网络驱动程序。

    安装 Python(Python 3 已包含 pip) 安装 Selenium(pip install selenium一些 IDE 如PyCharm 建议安装库,只需导入 Selenium) 下载Mozilla webdriver 享受吧!

【讨论】:

【参考方案3】:

    在 Windows 中从以下位置安装 Python:https://www.python.org/downloads/

    然后从命令行运行 pip install:pip install selenium

    下载 Gecko/Chrome/Internet Explorer 驱动程序并将 driver.exe 路径添加到 PATH 环境变量。所以需要在运行 Selenium 的同时设置路径 driver.Firefox() / driver.Chrome() 方法。

【讨论】:

以上是关于python+selenium3+firefox中使用ActionChains双击等鼠标事件操作报错,但是其它谷歌、ie等浏览器均正常。的主要内容,如果未能解决你的问题,请参考以下文章

selenium3+python自动化50-环境搭建(firefox)

selenium3+python自动化50-环境搭建(firefox)转载

python+selenium3+firefox中使用ActionChains双击等鼠标事件操作报错,但是其它谷歌ie等浏览器均正常

终极答案搭建selenium3.11 +Firefox+python3.6自动化UI测试环境踩的坑

python+selenium3+firefox中使用ActionChains双击等鼠标事件操作报错,但是其它谷歌、ie等浏览器均正常。

python3+ selenium3+ Firefox最新版,成功启动了浏览器,但是启动后就不接着向下执行了!