【问题标题】:Downloading files with Watir Webdriver使用 Watir Webdriver 下载文件
【发布时间】:2015-10-20 23:16:31
【问题描述】:

我想使用 Watir Webdriver 从页面下载文件。我需要能够将下载位置设置为我定义的目录。我找到了this page,但是那里的代码不起作用:

profile = Selenium::WebDriver::Chrome::Profile.new
profile['download.prompt_for_download'] = false
profile['download.default_directory'] = download_directory

b = Watir::Browser.new :chrome, :profile => profile

(其中 download_directory 只是我的桌面)给出了这个:

Selenium::WebDriver::Error::UnknownError: unknown error: cannot parse capability: chromeOptions
from unknown error: unrecognized chrome option: profile
  (Driver info: chromedriver=2.19.346063 (38b35413bd4a486d436a9749e090454bc9ff6708),platform=Mac OS X 10.11.0 x86_64)
from /Users/myusername/.rvm/gems/ruby-1.9.3-p551/gems/selenium-webdriver-2.48.1/lib/selenium/webdriver/remote/response.rb:70:in `assert_ok'

我猜该代码是用于旧版本的 Watir。如何通过 Watir 设置 Chrome 的下载位置?

【问题讨论】:

    标签: ruby google-chrome download watir-webdriver


    【解决方案1】:

    您的示例适用于 new 的旧 chrome (webdriver 1) 您必须使用以下代码:

    prefs = {
        'download' => {
            'default_directory' => download_directory,
            'prompt_for_download' => false,
        },
        'profile' => {
            'default_content_settings' => {'multiple-automatic-downloads' => 1}, #for chrome version olde ~42
            'default_content_setting_values' => {'automatic_downloads' => 1}, #for chrome newe 46
        }
    }
    
    caps = Selenium::WebDriver::Remote::Capabilities.chrome
    caps['chromeOptions'] = {:prefs => prefs}
    
    b = Watir::Browser.new :chrome, :desired_capabilities => caps
    

    更多你可以在我的旧answer 上讨论这个问题

    【讨论】:

      【解决方案2】:

      Stephan's answer 的基础上,我发现我可以使用这个更短/更简洁的版本:

      preferences = { 
        :download => {
          :prompt_for_download => false,
          :directory_upgrade => true,
          :default_directory => "download_directory"
        }   
      }   
      
      browser = Watir::Browser.new :chrome, :prefs => preferences
      

      【讨论】:

        猜你喜欢
        • 2016-12-15
        • 2015-08-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-02
        • 2015-02-17
        相关资源
        最近更新 更多