2011-07-03 3 views
5

私はWatirを使ってRubyスクリプトを実行しています。いくつかのファイルを特定のディレクトリに自動的に保存しようとしています。だから、私のMozillaの設定では、デスクトップを言うために私のデフォルトのダウンロードディレクトリを設定し、ファイルを自動的に保存することを選択しました。Watir Mozilla Firefox環境設定を変更する

ただし、これらの変更は、スクリプトの実行を開始しても反映されません。設定がデフォルトに戻っているようです。私は

require "rubygems"   # Optional. 
require "watir-webdriver" # For web automation. 
require "win32ole"   # For file save dialog. 

次含まれて新しいFirefoxのインスタンスを開いてきました:

browser = Watir::Browser.new(:firefox) 

好みは、このバックに設定されるだろう、なぜ上の任意のアイデアを?または私がやろうとしていることのための代替アイデア? (ファイルを自動的に保存する)。好みは「リセット」しているように見える理由は、各ブラウザインスタンスのためのクリーンなプロファイルを使用していますwebdriverを

おかげ

答えて

7

。あなたのデフォルトのプロファイルを使用するように指示することができます。

Watir::Browser.new :firefox, :profile => "default" 

たり、ブラウザを起動する前に、プログラムでプロファイル設定を微調整:

profile = Selenium::WebDriver::Firefox::Profile.new 
profile['some.preference'] = true 
profile.add_extension "/path/to/some/extension.xpi" 

Watir::Browser.new :firefox, :profile => profile 

自動ファイルのダウンロードを設定する例えば、セレンウィキにthis sectionを参照してください。

+0

私は[「dom.disable_open_during_load」]は真=と、ブラウザが実際に起動したときにその値がfalseのままプロファイルでそれを試してみました。 – Madhu

2

変更デフォルトワチールの好みのダウンロード場所について

Firefoxの

profile = Selenium::WebDriver::Firefox::Profile.new  
download_dir = File.join(Rails.root, 'lib', 'assets') 
profile['browser.download.dir'] = download_dir 
profile['browser.helperApps.neverAsk.saveToDisk'] = "text/csv,application/pdf" 
@b = Watir::Browser.new. :firefox, :profile => profile 

ノートのクロム

profile = Selenium::WebDriver::Chrome::Profile.new 
download_dir = File.join(Rails.root, 'lib', 'assets') 
profile['download.default_directory'] = download_dir 
profile[download.prompt_for_download] = false 
@b = Watir::Browser.new :chrome, :profile => profile 

用:から簡単Rails.root/libフォルダにアクセスすることができるようしますあなたのレールアプリの中で、このコードをconfig/application.rbファイルに追加する必要があります:

詳細については、
config.autoload_paths += Dir["#{config.root}/lib/**/"] 

http://watirwebdriver.com/browser-downloads/

関連する問題