【问题标题】:selenium server, selenium client, on an UBUNTU GUI serverselenium 服务器,selenium 客户端,在 UBUNTU GUI 服务器上
【发布时间】:2017-01-13 00:13:30
【问题描述】:

我有一个VPSubuntu 14.04 LTS 并安装了桌面包,这意味着我可以从ssh -X 会话启动firefox。 为了进行测试,我从我的服务器启动了 selenium 独立服务器 jar (selenium-server-standalone-3.0.0-beta3.jar) 启动它后,在另一个 ssh 会话中,我只需输入 python 命令:

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

然后,按照以下说明进行操作 http://selenium-python.readthedocs.io/getting-started.html#using-selenium-with-remote-webdriver,我输入:

driver = webdriver.Remote(
command_executor='http://127.0.0.1:4444/wd/hub',
desired_capabilities=DesiredCapabilities.FIREFOX)

45 秒后,我在服务器窗口和客户端窗口中都有很多错误。 这是主要错误:

原因:org.openqa.selenium.firefox.NotConnectedException:45000 毫秒后无法连接到端口 7055 上的主机 127.0.0.1。火狐控制台输出: 错误:GDK_BACKEND 与可用显示不匹配

我看到一些人有同样的问题,但即使使用最新的 java 和 selenium 版本,我仍然遇到这个问题。 提前感谢您的帮助

【问题讨论】:

  • 你的火狐版本是多少??
  • Mozilla Firefox 48.0
  • 尝试使用提供的答案并告诉我..:)

标签: java python selenium ubuntu ssh


【解决方案1】:

看来您正在尝试使用最新的 Firefox 版本的 selenium 3。要使用selenium 3 支持最新的firefox,需要download latest geckodriver executable from this link 并将其提取到您的系统中的任何位置。

现在运行selenium-server-standalone-3.0.0-beta3.jar 使用以下命令:-

java -jar selenium-server-standalone-3.0.0-beta3.jar -Dwebdriver.gecko.driver = "path/to/downloaded geckodriver"

现在您需要将marionette 属性的功能设置为true 以支持带有selenium 3 的最新Firefox,如下所示:-

from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

caps = DesiredCapabilities.FIREFOX

# Tell the Python bindings to use Marionette.
caps["marionette"] = True

driver = webdriver.Remote(command_executor = 'http://127.0.0.1:4444/wd/hub', desired_capabilities = caps)

注意 :- 更多information about marionette follow this Mozilla official page

【讨论】:

  • 用旧版本的 selenium (2.53) 尝试过同样的问题,去试试你的;)
  • @saperlipopette 你肯定可以使用相同的答案来支持带有 selenium 3 和 selenium 2 的 geckodriver 的最新 firefox。如果您有任何问题,请告诉我..:)
  • 线程“主”com.beust.jcommander.ParameterException 中的异常:未知选项:-Dwebdriver.gecko.driver
  • 在命令行运行java -jar selenium-server-standalone-3.0.0-beta3.jar -Dwebdriver.gecko.driver = "path/to/downloaded geckodriver"时是否出现此错误??
  • 看看this link可能有帮助
猜你喜欢
  • 2023-03-27
  • 2021-05-26
  • 1970-01-01
  • 1970-01-01
  • 2017-03-31
  • 1970-01-01
  • 2017-03-09
  • 1970-01-01
  • 2017-10-28
相关资源
最近更新 更多