2011-02-03 16 views
6

ウェブページのHTMLソース(すべてのabosulteと相対URL)からすべてのImage URLのリストを取得したいと思います。私はJsoupを使ってHTMLを解析しましたが、すべての画像を与えていません。たとえば、私は、その示すgoogle.com HTMLソースを解析していたときにゼロimages..In google.com HTMLソース画像リンクは画像リンクはフォームに JAVAを使用してHTMLからすべての画像を抽出

"background:url(/intl/en_com/images/srpr/logo1w.png)

そしてrediff.comで

..です形であります..

videoArr[j]=new Array("http://ishare.rediff.com/video/entertainment/bappi-da-the-first-indian-in-grammy-jury/2684982","http://datastore.rediff.com/h86-w116/thumb/5E5669666658606D6A6B6272/v3np2zgbla4vdccf.D.0.bappi.jpg","Bappi Da - the first Indian In Grammy jury","http://mypage.rediff.com/profile/getprofile/LehrenTV/12669275","LehrenTV","(2:33)"); j = 1 videoArr[j]=new Array("http://ishare.rediff.com/video/entertainment/bebo-shahid-jab-they-met-again-/2681664","http://datastore.rediff.com/h86-w116/thumb/5E5669666658606D6A6B6272/ra8p9eeig8zy5qvd.D.0.They-Met-Again.jpg","Bebo-Shahid : Jab they met again!","http://mypage.rediff.com/profile/getprofile/LehrenTV/12669275","LehrenTV","(2:17)");

全ての画像は、「IMG」tags..I中ではありませんまた、上記のHTMLソースに示すように、「IMG」タグ内でさえない画像を抽出したいです。

私はこれをどのように行うことができます..?この上で私を助けてください.. おかげ

+0

なぜJavaですか?ブラウザプラグインを開発したことがありますか? – fglez

+0

または、画像を保存するプロキシを実装していますか? –

答えて

1

これは少し難しいことになるだろう、と思います。基本的には、Webページをダウンロードし、ページのDOMを構築し、DOMを変更するjavascriptを実行するライブラリが必要です。結局のところ、DOMからすべての可能なイメージを抽出する必要があります。別の可能なオプションは、リソースをダウンロードし、URLを検査し、URLがイメージレコードである場合には、ライブラリによるすべての呼び出しを傍受してURLにすることです。

私の提案は、HtmlUnit(http://htmlunit.sourceforge.net/gettingStarted.html。)で遊ぶことから始めることをお勧めします.DOMを構築するのはうまくいきます。どのタイプのフックを持っているのかわからないので、リソースをダウンロードするメソッドをインターセプトします。もちろん、それがあなたにフックを提供していない場合は、常にAspectJを使用するか、単にHtmlUnitソースコードを変更することができます。幸い、これは合理的に興味深い問題のように聞こえる。解決策を見つけたら、投稿してください。

0

ページ内のすべての画像を参照したいだけであれば、単純な正規表現でHTMLやリンクされたjavascriptやCSSをスキャンできませんか?画像ではないHTML/JS/CSSに[-:_./%a-zA-Z0-9]*(.jpg|.png|.gif)がどれくらいあるでしょうか?私はそうは思わないでしょう。とにかく壊れたリンクを許可するべきです。

Karthikの提案はより正確でしょうが、私はあなたが絶対にすべてを得て、興味のない画像を除外することがより重要であると想像します。

関連する問題