[英]How to start Firefox without safe mode via Selenium.WebDriver
[英]cannot start selenium.WebDriver firefox in java in a box with no UI
我有类似的东西:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
class Gecko {
...
FirefoxBinary ffB = new FirefoxBinary();
ffB.setEnvironmentProperty("DISPLAY", ":10");
...
options.setBinary(ffB);
WebDriver driver = new FirefoxDriver(options);
然后,我使用以下命令启动虚拟帧缓冲区:
Xvfb :10 -screen 0 1024x768x24 &
但是当我使用Selenium时:
java -cp .:selenium-server-standalone-3.5.0.jar Gecko
以下问题显示:
1508364524466 geckodriver :: marionette INFO使用args [“ -marionette”]启动浏览器/ usr / bin / firefox
错误: GDK_BACKEND与可用的显示不匹配
线程“主” org.openqa.selenium.WebDriverException中的异常:连接被拒绝
可能是哪个原因造成的? 用户权限? 防火墙? 当前框未安装任何桌面环境。
如果显示错误:GDK_BACKEND与可用的显示不匹配,则安装pyvirtualdisplay:
pip install pyvirtualdisplay selenium
You might need xvfb too:
sudo apt-get install xvfb
Then try adding this code:
from pyvirtualdisplay import Display
display = Display(visible=0, size=(800, 600))
display.start()
Full example:
from pyvirtualdisplay import Display
from selenium import webdriver
display = Display(visible=0, size=(800, 600))
display.start()
browser = webdriver.Firefox()
browser.get('http://www.python.org')
browser.close()
display.stop()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.