首先我们新建一个Maven普通客户端项目,然后打开pom.xml
引入htmlunit支持:
<dependency>
<groupId>net.sourceforge.htmlunit</groupId>
<artifactId>htmlunit</artifactId>
<version>2.26</version>
</dependency>
然后我们写一个测试类,来解析http://www.3dns.com.cn/ 获取网页html以及网页文本,这里有点类似httpClient,但是底层执行过程默认多了一个js执行过程(当然htmlunit提供了关闭js解析设置);
package com.hbk.htmlunit;
import java.io.IOException;
import java.net.MalformedURLException;
import com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException;
import com.gargoylesoftware.htmlunit.WebClient;
import com.gargoylesoftware.htmlunit.html.HtmlPage;
/**
*
* @author 黄宝康
*获取http://www.3dns.com.cn的源代码
*/
public class HtmlUnitTest
{
public static void main( String[] args )
{
WebClient webClient = new WebClient(); // 实例化Web客户端
try {
HtmlPage page = webClient.getPage("http://www.3dns.com.cn/");
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(); // 关闭客户端,释放内存
}
}
}
运行输出: