2011-07-03 6 views
1

私はWatirを使用してウェブサイト上でいくつかのアクションを実行し、最終的に私はいくつかのファイルを保存するプロンプトを表示します。私がしたいのは、プロンプトに自動的に従い、ファイルを自動的に保存することです。ファイルを保存ダイアログ/ RubyのWatirでのプロンプト

私が見たことから、win32oleを使用すると、これらの操作を実行するいくつかの機能があります。

gem install win32ole-pp 

によって正常にインストールされており、win32oleに問題はありません。しかし、問題の.dllは、適切なフォルダに配置されていないこの問題hereに提案された解決策は、あり

unknown OLE server: `AutoItX3.Control' 

:私は

ai = WIN32OLE.new("AutoItX3.Control") 

を言う呼び出すときしかし、私はというエラーを受け取ります。

私は、Watirでこれを行う別の方法があるのだろうかと思っていますか?それとも、私が直面している問題のための他の解決策が存在しますか?

ありがとうございました。

+0

あなたは 'AutoItX3.dll'は、ファイルのウィンドウ検索を実行することがありますか?ファイルはFAQで正確に言わない場所にあるかもしれません。それを見つけたら 'regsvr32'コマンドを試してみる価値があります。 – Casper

+0

はい、私は残念ながらそれが上がっていませんでした。しかし、考えをありがとう。 –

+0

奇妙な。 Zipファイルのダウンロード方法については、http://www.autoitscript.com/site/autoit/downloads/(ページの途中で)DLLはそのパッケージに入っていますので、それを使用することができます。また、あなたがWin7上にいる場合は、おそらくここで見てください(管理者として実行する必要があります):http://rubywithwatir.blogspot.com/2008/06/unknown-ole-server-autoitx3control.html – Casper

答えて

0

私はwatirとfirefoxでこの問題を解決しました。 Firefoxには、パラメータ化されたフォルダにプロンプ​​トを表示せずに、対象のファイルタイプをMIMEに関して自動的に保存するオプションがあります。ワチールは、Firefoxのパラメータへのアクセス権を持っているし、それらを変更することができます。

downloadDir = "your-dl-dir" 
profile = Selenium::WebDriver::Firefox::Profile.new 
profile['browser.download.dir'] = downloadDir 
profile['browser.download.folderList'] = 2 
profile['browser.helperApps.neverAsk.saveToDisk'] = 'images/jpeg, application/pdf, application/octet-stream' 
browser = Watir::Browser.new(:firefox, :profile => profile) 

ソース:http://elementalselenium.com/tips/2-download-a-file

関連する問題