首页 文章

在Windows 10机器上运行的应用程序无法找到文件

提问于
浏览
7

我在Linux机器上使用chromedriver有一个应用程序,我将应用程序切换到Windows 10机器 . 现在突然间它找到了chromedriver文件 .

这是错误:

Selenium::WebDriver::Error::WebDriverError in Static#home
Showing C:/Users/User/Documents/test_app/app/views/static/home.html.erb where line #4 raised:

    Unable to find chromedriver. Please download the server from        http://chromedriver.storage.googleapis.com/index.html and place it        somewhere on your PATH. More info at https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver.

我将chromedriver文件放在我的Linux机器上的相同位置,就在应用程序的主文件夹中 . 在这种情况下,路径为 C:\Users\User\Document\test_app . Windows解释路径的方式与Linux不同吗?

chromedriver是latest release . 它是's titled 2788752 . The 2788753 means Windows. Could the 2788754 mean it'用于32位系统?我的机器是64位的 .

3 回答

  • 3

    如果将chromedriver.exe放在与脚本位于同一文件夹的 Chromedriver_win32.zip 文件夹中,则可以将 driver_path 设置为该文件 . 见下面的代码:

    require "selenium-webdriver"
    
    Selenium::WebDriver::Chrome.driver_path = File.join(File.absolute_path('./', "Chromedriver_win32.zip/chromedriver.exe"))    
    driver = Selenium::WebDriver.for :chrome
    driver.get "https://www.google.com.sg/"
    
  • 4

    我对ruby或ruby-on-rails没有任何了解 . 请在Windows操作系统中找到java或python中的等效项 .

    两种方式:

    • 您可以将Chrome驱动程序保存在 PATH 变量的位置(Windows 10中的环境变量)

    • 以编程方式设置可执行文件的路径 chromedriver.exe

    For Java

    System.setProperty("webdriver.chrome.driver", "/path/to/chromedriver");
    

    For Python :(我们将chromedriver.exe保存在 C:\Python27\Scripts 位置 . 安装python(Activestate)时,此位置已添加到PATH变量 . 如果chromedriver.exe不在其中一个PATH位置,则可以指定如下)

    driver = webdriver.Chrome('/path/to/chromedriver')  # Optional argument, if not specified will search path.
    

    For Ruby:

    将ruby安装路径添加到Windows PATH环境变量并将chromedriver.exe保留在该位置 . (Windows在PATH变量中指定的位置搜索二进制文件 . )

    有关将ruby安装位置设置为 PATH https://stackoverflow.com/a/26947536的详细信息

    参考文献:

  • 1

    我会把它作为一个评论,但是,因为我相对较新,我不得不把它作为一个答案,它可能是......

    请原谅我,如果我问明显,但是,您是否尝试“解压缩”文件并将“.exe”文件放入该目录?你提到的文件(你说.. Headers 为“chromedriver_win32.zip”)不是Windows中的可执行文件 . 您应该寻找的文件是chromedriver.exe .

相关问题