1st.既然它提示没有找到chromedriver,那咱们必须先下载一个(前提你得有个chrome浏览器。。。),下载地址就是http://code.google.com/p/chromium/downloads/list,好了,下载完成后将chromedriver.exe存放在C:\Documents and Settings\Administrator\Local Settings\Application Data\Google\Chrome\Application,因为你的chrome浏览器也是安装在这里的。

2nd.他说要place it somewhere on your PATH,那'PATH'是什么呢,其实就是系统环境变量里的‘path’变量,请看以下代码:

 

[ruby]
  1. def self.executable_path  
  2.           @executable_path ||= (  
  3.             Platform.find_binary "chromedriver" or raise Error::WebDriverError, MISSING_TEXT  
  4.             #Platform.find_binary "chrome" or raise Error::WebDriverError, MISSING_TEXT   
  5.           )  
  6.         end  
def self.executable_path          @executable_path ||= (            Platform.find_binary "chromedriver" or raise Error::WebDriverError, MISSING_TEXT            #Platform.find_binary "chrome" or raise Error::WebDriverError, MISSING_TEXT          )        end

这段代码存放在chrome/service.rb,他又调用platform.find_binary函数,传入参数'chromdriver',我们再看看find_binary函数

[ruby]
  1. <FONT xmlns="http://www.w3.org/1999/xhtml">def find_binary(*binary_names)  
  2.         puts 'names:'  
  3.         puts *binary_names  
  4.         paths = ENV['PATH'].split(File::PATH_SEPARATOR)  
  5.         puts 'paths:'  
  6.         puts paths  
  7.         binary_names.map! { |n| "#{n}.exe" } if windows?  
  8.         puts 'name2:'  
  9.         puts binary_names  
  10.         binary_names.each do |binary_name|  
  11.           paths.each do |path|  
  12.             exe = File.join(path, binary_name)  
  13.             puts 'result'  
  14.             puts File.join(path, binary_name)  
  15.             return exe if File.executable?(exe)  
  16.           end  
  17.         end  
  18.   
  19.         nil  
  20.       end</FONT>  
 

在这里可以验证,错误提示中说的PATH就是环境变量,因此我们需要在环境变量的PATH中添加这个chromedriver的地址,即添加C:\Documents and Settings\Administrator\Local Settings\Application Data\Google\Chrome\Application;切记不要追加chromedriver.exe!

 

 

PS:也许你在添加环境变量后,仍没有反应,那就把你当请的cmd窗口关闭,再重新打开一个cmd窗口再执行。