在无头模式下运行webdrive,Firefox仍在启动

时间:2015-11-07 19:05:43

标签: ruby selenium selenium-webdriver headless

我正在使用Selenium webdriver。我试图在无头模式下运行我的代码,但每当我调用它时,firefox仍然在我的机器上打开。这是我正在运行的代码:

do

1 个答案:

答案 0 :(得分:0)

如评论中所述,如果您在linux上运行,则需要使用xvfb。

我最近在这里描述了它:https://stackoverflow.com/a/33563013/1199731

您是否可以尝试在命令行上启动firefox,只需输入firefox即可。 如果失败,则会出现Can't find/open display on 0.0或smth等异常。像这样,你应该使用XVFB:

以下是如何使用XVFB的说明。

sudo apt-get update
sudo apt-get install firefox xvfb
sudo Xvfb :10 -ac
export DISPLAY=:10

现在您可以尝试使用firefox启动firefox并尝试运行您的程序。

我不知道ruby WebDriver API,但在Java中有一个FirefoxBinary.setEnvironmentProperty,您可以使用("DISPLAY", ":10")调用它以编程方式设置环境变量。