JRubyでCelerityを使用して、特定のWebサイトからの.csvファイルのダウンロードを自動化しています。Webサイトの1つ(LinkShare)については、非常に近づいていますが、最後のステップを理解できません。
ウェブサイトはjavascriptと「hiddeniframe」メソッドを使用してファイルのダウンロードをプッシュします-通常のブラウジング中にダウンロードボタンをクリックすると、ダウンロードコンテンツを含む非表示のiframeを作成するjavascriptが呼び出され、ブラウザがそれを取得してユーザーにプロンプトを表示しますファイルを保存します。
明らかに、Celerityではまったく同じようには機能しません。リンクをクリックすると、jirbに新しいiframeが表示されますが、メソッドを呼び出すことができず、次のようなエラーが発生します。
NoMethodError: undefined method `getDocumentElement' for #<Java::ComGargoylesoftwareHtmlunit::TextPage:0x184e6efc>
Celerity / Htmlunit / Javascript / Jrubyの経験が豊富で、私を正しい方向に向けることができる人はいますか?ダウンロードコンテンツ(.csvファイル)を取得したいだけです。
あるいは、タスクに適した(ヘッドレス)ブラウザー自動化ツールが存在する場合は、それを知っている人はいますか?