2014-10-29 57 views
0

我已经安装了Chrome 32位版本和Chrome Canary。当我运行Webdriver时,它总是打开32位版本。这是由于我提供的路径。如果我的系统中同时安装了Chrome(32位)和Chrome Canary,ChromeDriver如何识别Chrome Canary

当我尝试选择Canary的可执行文件路径时,代码超时而不打开它。是否由于某些错误的可执行文件路径或其他原因?

我发现了金丝雀的可执行文件的路径是这样的:

C:\用户\三星\应用程序数据\本地\谷歌\ Chrome浏览器的SxS \应用[具体到我的系统]

而且我在System.SetProperty()函数中使用此路径:

System.setProperty("webdriver.chrome.driver", "C:\Users\samsung\AppData\Local\Google\Chrome SxS\Application\chrome"); 

我在做什么错在这里?

+0

[?运行的webdriver与铬金丝雀](的可能的复制http://stackoverflow.com/questions/18499367/run-webdriver -with - 铬 - 金丝雀) – j4y 2015-12-09 22:42:10

回答

0

您正在使用的命令是将位置设置为chromedriver所在的位置,而不是Chrome本身。有关如何设置这些设置的更多信息,请参阅ChromeDriver文档(https://sites.google.com/a/chromium.org/chromedriver/capabilities

您正在寻找的特定人员是setBinary选项以指定它应该在哪里查找Chrome。下面的代码应该比你尝试的更好一点:

ChromeOptions options = new ChromeOptions(); 
options.setBinary("/path/to/other/chrome/binary"); 

希望这有助于!

1

您可以使用以下两种方法之一打开Canary,但不能使用Chrome。

选项1:

driver = webdriver.ChromeOptions() 
driver = webdriver.Chrome('C:\Users\shejain\AppData\Local\Google\Chrome SxS\Application\chrome.exe') 

选项2:

sw=webbrowser.get("C:/Users/shejain/AppData/Local/Google/Chrome SxS/Application/chrome.exe %s") 
sw.open("www.example.com") 
相关问题