2014-10-29 3 views
0

Я установил 32-разрядную версию Chrome и Chrome Canary. Когда я запускаю Webdriver, он всегда открывает 32-битную версию. Это связано с тем, что я предоставляю.Как ChromeDriver распознает Chrome Canary, если у меня есть как Chrome (32 бит), так и Chrome Canary в моей системе

Когда я пытаюсь выбрать исполняемый путь для Canary, код истекает без его открытия. Это из-за ошибочного исполняемого пути или чего-то еще?

я узнал, что путь к исполняемому для Canary это:

C: \ Users \ Samsung \ AppData \ Local \ Google \ Chrome SxS \ Application [специфичную для моей системы]

И Я используя этот путь в функции System.SetProperty() как:

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

Что я здесь делаю неправильно?

+0

Возможный дубликат [? Run WebDriver с Chrome Canary] (http://stackoverflow.com/questions/18499367/run-webdriver -с-хром-канареечно) – j4y

ответ

0

Команда, которую вы используете, - это указать местоположение, в котором расположен хромированный рекордер, а не сам 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

Вы можете использовать любой из двух способов открыть Канарские острова, но не 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") 
Смежные вопросы