我在selenium项目中使用chrome浏览器。
以下是我正在使用的用户代理字符串:
System.setProperty("webdriver.chrome.driver","C:\\users\\..\\chromedriver.exe");
driver = new ChromeDriver();
如果我运行脚本会发生什么:
它打开Chrome浏览器,一段时间后关闭它并给出错误:
org.openqa.selenium.WebDriverException:未知错误:无法 发现打开的页面(驱动程序信息:chromedriver = 2.2,platform = Windows NT 6.1 x86)(警告:服务器未提供任何堆栈跟踪 信息)命令持续时间或超时:26.83秒构建信息: 版本:' 2.39.0',版本:' ff23eac',时间:' 2013-12-16 16:12:12' 系统信息:主持人:' QAVM-9',ip:' 27.101.1.26',os.name:' Windows 7', os.arch:' x86',os.version:' 6.1',java.version:' 1.7.0_45'司机 info:org.openqa.selenium.chrome.ChromeDriver at sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法) 在 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) 在 org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:193) 在 org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145) 在 org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:554) 在 org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:216) 在 org.openqa.selenium.chrome.ChromeDriver.startSession(ChromeDriver.java:182) 在 org.openqa.selenium.remote.RemoteWebDriver。(RemoteWebDriver.java:111) 在 org.openqa.selenium.remote.RemoteWebDriver。(RemoteWebDriver.java:115) 在 org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:161) 在 org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:150) 在 org.openqa.selenium.chrome.ChromeDriver。(ChromeDriver.java:139)
请帮帮我,完全停止执行。 如果需要任何其他信息,请告诉我。
答案 0 :(得分:2)
我建议您更新您的Chrome驱动程序,因为您的版本是2.2,最新版本是2.9。如果浏览器是最新版本,则现有的Chrome驱动程序可能不支持您的chrome浏览器。
答案 1 :(得分:0)
这是我为摆脱这个错误所做的工作(
未知错误:无法发现打开的页面
)
在量角器配置文件中,添加以下内容:
capabilities: {
browserName: 'chrome',
chromeOptions: {
args: ['--no-sandbox']
}
},
最重要的一行是--no-sandbox
;添加该行以某种方式消除了该错误。
我不确定它为什么会起作用,但这是我在网上挖掘时发现的一种解决方法。