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

Upvotes: 11

Views: 50620

Answers (7)

Hassan Saeed
Hassan Saeed

Reputation: 7140

you should have installed chrome in your machine

and your chromedriver.exe version should accordingly to chrome download form

https://chromedriver.chromium.org/downloads

and given new chromedriver.exe path to your script..

This works well for me

Upvotes: 0

Nithya
Nithya

Reputation: 17

enter image description here

  1. I reinstalled chrome and made sure it exists in the given folder.
  2. Made sure the selenium project is in the repos and not on desktop
  3. Updated all the drivers using Manage Nuget Packages

Upvotes: 0

k.s. Karthik
k.s. Karthik

Reputation: 761

In the path you have given for Chrome binary please specify the chrome.exe as well. It will work!

Upvotes: 0

Steve Sprengel
Steve Sprengel

Reputation: 1

Isn't the problem that you're missing the chrome.exe at the end of the path?

In other words, the path should include the executable, rather than just being the folder in which the executable is located.

Upvotes: 0

hynekcer
hynekcer

Reputation: 15578

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.

Upvotes: 3

Ripon Al Wasim
Ripon Al Wasim

Reputation: 37826

Download "chromedriver_win_22_0_1203_0b.zip" extract it and set the path as below: (I have set my path)

options.BinaryLocation = @"F:\\Software Download_Ripon\\WebDriver\\chromedriver_win_22_0_1203_0b\\chromedriver.exe";

The above should work well

Upvotes: -2

dalong
dalong

Reputation: 1

I encountered the same issue for the php web driver.

Please install the chrome to the default directory, the chrome installations would automatically install the app to the default folder:

%HOMEPATH%\Local Settings\Application Data\Google\Chrome\Application\chrome.exe

Please check this wiki page for more information. http://code.google.com/p/selenium/wiki/ChromeDriver

Upvotes: 0

Related Questions