Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Selenium WebDriver - Could not find Chrome binary

I'm trying to get Selenium tests running with Chrome. I'm using C#.

var options = new OpenQA.Selenium.Chrome.ChromeOptions();
options.BinaryLocation = @"C:\Users\Vilem\AppData\Local\Google\Chrome\Application\";

using (IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver(options))
{
...

Seems like chromedriver.exe was found but it could find the Chrome binary. I set up the path to chrome.exe explicitly after automatic search failed. I even tried it with "chrome.exe" at the end. I always get the same result:

Could not find Chrome binary at:

C:\Users\Vilem\AppData\Local\Google\Chrome\Application


FYI: I have a question concerning 3 selenium webdrivers. I'm trying to split the question into multiple so the discussion is easier. Original: Selenium WebDriver - No driver is working for me

like image 530
Vilém Procházka Avatar asked Jul 16 '12 15:07

Vilém Procházka


1 Answers

This is a typical problem in some localized Windows XP distributions.

I describe a solution for Python because it is different, without CamelCase property BinaryLocation identifier and it is less documented. Yes, a general solution is to create a new instance of ChromeOptions, but it is possible simply to fix the bug dynamically directly by ChromeOptions by some code started first somewhere:

from selenium import webdriver
webdriver.ChromeOptions.binary_location = ur"c:\Documents and Settings\user name\Local Settings\Data aplikací\Google\Chrome\Application\chrome.exe"

and leave all other code unchanged:

from selenium import webdriver
browser = webdriver.Chrome()

It is important to use ur"..." unicode raw string literal in Python (not byte string, if the path contains international characters) and not normal u"..." if the the complete path is hardcoded and the username starts with some character special after \ like \n \r \t.

like image 173
hynekcer Avatar answered Oct 27 '22 01:10

hynekcer