无法找到chromedriver可执行文件

时间:2013-11-08 15:10:25

标签: ruby selenium selenium-webdriver watir selenium-chromedriver

  

无法找到chromedriver可执行文件。请从http://code.google.com/p/chromedriver/downloads/list下载服务器并将其放在PATH上的某个位置。有关详情,请访问http://code.google.com/p/selenium/wiki/ChromeDriver。 (Selenium :: WebDriver :: Error :: WebDriverError)

在Ubuntu 13上使用Watir和Ruby。

10 个答案:

答案 0 :(得分:35)

对于MacOS上的其他人:

vec = (str == '1');

你会好起来的。

答案 1 :(得分:9)

请从http://code.google.com/p/chromedriver/downloads/list下载服务器并将其放在PATH上的某个位置。有关详情,请访问https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver

UPD:未破解的链接:https://sites.google.com/a/chromium.org/chromedriver/downloads

答案 2 :(得分:2)

它还可以添加名为webdriver.chrome.driver的环境变量。

webdriver.chrome.driver设置为绝对路径。

答案 3 :(得分:2)

对于Linux / Ubuntu用户,仅运行以下命令应已足够:

sudo apt-get install chromium-chromedriver 

它还负责将二进制文件添加到PATH。

答案 4 :(得分:1)

我正在考虑Ruby on Rails功能测试。将chromedriver添加到selenium webdrivers初始化的步骤:

1)从https://sites.google.com/a/chromium.org/chromedriver/downloads

下载最新的chrome可执行文件

2)在rails spec helper中声明webdriver路径为 (对于硒3.x)

Selenium::WebDriver::Chrome.driver_path = "/home/jazz/Desktop/web_drivers/chromedriver"

这应该在驱动程序初始化之前,如Capybara::Selenium::Driver.new(app, :browser => :chrome)

对于3.x以上,只需在初始化期间传递驱动程序路径 -

Capybara::Selenium::Driver.new(app, :browser => :chrome,:driver_path => <path to chromedriver>)

全套。在rails中加载任何功能规范。它将打开一个镀铬窗口。

答案 5 :(得分:1)

对我来说,有效的方法是根据我的Chrome版本下载chromedriver.exe并将其放在目录“ C:/ ruby​​ / ... bin /”中 我尝试设置环境变量,但是它根本没有用。

答案 6 :(得分:0)

我还有另一种值得尝试的解决方案:

rails-helper.rb

转到此行并将:firefox更改为:chrome

Capybara.register_driver :selenium do |app|
    Capybara::Selenium::Driver.new(app, :browser => :firefox)
end

Capybara.register_driver :selenium do |app|
    Capybara::Selenium::Driver.new(app, :browser => :chrome)
end

然后,转到ChromeDriver并运行以下命令:

brew tap homebrew/cask && brew cask install chromedriver

答案 7 :(得分:0)

我在Ruby和Watir上遇到了同样的问题。我已经根据本教程安装了ChromeDriver:

https://tecadmin.net/setup-selenium-chromedriver-on-ubuntu/

然后我遇到以下错误:

DevToolsActivePort file doesn't exist while trying to initiate Chrome Browser

在我的情况下,通过向浏览器构造函数添加参数-no-sandbox -disable-dev-shm-usage 解决了错误:

args = ['--no-sandbox', '--disable-dev-shm-usage']
browser = Watir::Browser.new :chrome, options: {args: args}

最后,一切正常。

答案 8 :(得分:0)

您可以将chromedriver直接放在path变量中已经存在的ruby bin文件夹中。

请参阅:-refer this

答案 9 :(得分:0)

对于Windows用户,请从https://sites.google.com/a/chromium.org/chromedriver/downloads下载chromedrive并将chromedrive.exe复制到C:\ Windows