2012-04-10 7 views
5

私はちょうどページのテキストの内容がほしいと思うので、私はできるだけ軽量になるように取り込みたい。 HTMLUnitがそのまま使用できるJavaScript、CSS、その他の外部コンテンツの解析や追加読み込みをすべて無効にすることはできますか? webclient.getOptions()を使用し、上記HtmlUnit 2.13とするためJavaScriptとCSSを無視してHTMLUnitでページの純粋な生のHTMLを取得するにはどうすればよいですか?

WebClient webClient = new WebClient(); 
webClient.setCssEnabled(false); 
webClient.setAppletEnabled(false); 
webClient.setJavaScriptEnabled(false); 

答えて

9

私はあなたが探しているものに近いものがあると思います。

またquestionと回答も役に立ちます。それは本当に私のためのより高速なものを作ったが、私は次のことを試してください(代わりにasXml()の出力の)ページのオリジナルコンテンツを取得するために、最後にHtmlUnit ...

を、再コンパイルする必要がありました:

WebClient webClient = new WebClient(); 
HtmlPage page = webClient.getPage("http://www.yourpage.com"); 
String originalHtml = page.getWebResponse().getContentAsString(); 
+1

ありがとうございます。 'asXML()'と 'page.getWebResponse()。getContentAsString()'の違いは何ですか? – Thomas

+1

'asXML()'はコードをフォーマットします(例えば、htmlタグが開かれるとスペースを追加します)。 'getContentAsString()'は、Webサーバーから返されるHTMLコードを正確に表示します。 –

+3

HTMLUnit 2.13を起動するには、これらの "enable"メソッドを呼び出すwebClient.getOptions()。 – Paddy

関連する問題