htmlunit 示例

htmlunit 示例
先下载依赖的相关JAR包:http://sourceforge.net/projects/htmlunit/files/
示例1:获取javaeye网站的title
import  com.gargoylesoftware.htmlunit.FailingHttpStatusCodeException;
import  com.gargoylesoftware.htmlunit.WebClient;
import  com.gargoylesoftware.htmlunit.html.HtmlPage;

     public   static   void  getHomeTile()  throws  FailingHttpStatusCodeException, MalformedURLException, IOException{
         final  WebClient webClient =  new  WebClient();
         final  HtmlPage htmlPage = webClient.getPage("http://www.javaeye.com");
        System.out.println(htmlPage.getTitleText());
        System.out.println(htmlPage.getTextContent());

    }

可以看见打印出:JavaEye Java编程 Spring框架 AJAX技术 Agile敏捷软件开发 ruby on rails实践 - JavaEye做最棒的软件开发交流社区

和javaeye首页的title属性一样
示例二:获取一个特定的浏览器版本
public   void  homePage_Firefox()  throws  Exception {
     final  WebClient webClient =  new  WebClient(BrowserVersion.FIREFOX_2);
     final  HtmlPage page = webClient.getPage("http://htmlunit.sourceforge.net");
    assertEquals("HtmlUnit - Welcome to HtmlUnit", page.getTitleText());

}

示例三:获取特定ID的DIV或者锚链接

public   void  getElements()  throws  Exception {
     final  WebClient webClient =  new  WebClient();
     final  HtmlPage page = webClient.getPage("http://some_url");
     final  HtmlDivision div = page.getHtmlElementById("some_div_id");
     final  HtmlAnchor anchor = page.getAnchorByName("anchor_name");

}

实例四:模拟页面提交一个form

public   void  submittingForm()  throws  Exception {
     final  WebClient webClient =  new  WebClient();

     //  Get the first page
     final  HtmlPage page1 = webClient.getPage("http://some_url");

     //  Get the form that we are dealing with and within that form, 
    
//  find the submit button and the field that we want to change.
     final  HtmlForm form = page1.getFormByName("myform");

     final  HtmlSubmitInput button = form.getInputByName("submitbutton");
     final  HtmlTextInput textField = form.getInputByName("userid");

     //  Change the value of the text field
    textField.setValueAttribute("root");

     //  Now submit the form by clicking the button and get back the second page.
     final  HtmlPage page2 = button.click();

}

转自:http://www.blogjava.net/caizh2009/archive/2010/05/28/322145.html

你可能感兴趣的:(java)