私は、次のことを達成するために使用できるライブラリの調査に 1 日を費やしました。
- 結果をビューにレンダリングせずに、バックグラウンドのように Web ページの完全なコンテンツを取得します。
- lib は、たとえば最初の HTML がロードされた後に追加の結果データをロードするために ajax リクエストを起動するページをサポートする必要があります。
- 結果の html から、要素を xpath または css セレクター形式で取得する必要があります。
- 将来的には、次のページに移動する必要がある可能性もあります (イベントの起動、ボタン/リンクの送信など)。
これが私が成功せずに試したことです:
- Jsoup: うまく機能しますが、javascript/ajax はサポートされていません (そのため、ページ全体が読み込まれません)
- HttpEntityに組み込まれたAndroid:jsoupと同じjavascript/ajaxの問題
- HtmlUnit: まさに私が必要としているものに見えますが、数時間後に Android で動作させることができません (他のユーザーは 12MB 以上の jar ファイルをロードしようとして失敗しました。私自身が完全なソース コードをロードし、それを見つけるためだけにプロジェクト ライブラリとして参照しました。アプレットや java.awt (HtmlUnit で使用) などは Android には存在しません)。
- Rhino - これは非常に紛らわしく、Android で動作させる方法がわかりません。
- Selenium Driver: 動作するように見えますが、実際の html がビューに表示されないように、ヘッドレスで実装する簡単な方法がありません。
私のソリューションに最も適していると思われるので、HtmlUnitが機能することを本当に望んでいます。私のニーズに適した、見逃した方法または少なくとも別のライブラリはありますか?
私は現在 Android Studio 0.1.7 を使用しており、必要に応じて Ellipse に移行できます。
前もって感謝します!