htmlunit默认是会对网页中的css,javascript解析的,对于一般的非Js加载页面采集,我们可以把css.javascript解析去掉,这样可以提高效率;但是对于Js加载的页面,就不能去掉了;
我们给下演示代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | package com.open1111; import java.io.IOException; import java.net.MalformedURLException; import com.gargoylesoftware.htmlunit.BrowserVersion; import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException; import com.gargoylesoftware.htmlunit.WebClient; import com.gargoylesoftware.htmlunit.html.HtmlPage; public class HtmlUnitTest4 { public static void main(String[] args) { WebClient webClient= new WebClient(BrowserVersion.FIREFOX_52); // 实例化Web客户端 webClient.getOptions().setCssEnabled( false ); // 取消css支持 webClient.getOptions().setJavaScriptEnabled( false ); // 取消javascript支持 try { HtmlPage page=webClient.getPage( "http://www.java1234.com" ); // 解析获取页面 System.out.println( "网页html:" +page.asXml()); // 获取Html System.out.println( "====================" ); System.out.println( "网页文本:" +page.asText()); // 获取文本 } catch (FailingHttpStatusCodeException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { webClient.close(); // 关闭客户端,释放内存 } } } |
联系客服