htmlunit 示例


先下载依赖的相关JAR包:http://sourceforge.net/projects/htmlunit/files/
示例1:获取javaeye网站的title

<!-- <br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> 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.iteye.com " );
        System.out.println(htmlPage.getTitleText());
        System.out.println(htmlPage.getTextContent());

    }

可以看见打印出:JavaEye Java编程 Spring框架 AJAX技术 Agile敏捷软件开发 ruby on rails实践 - JavaEye做最棒的软件开发交流社区
和javaeye首页的title属性一样
示例二:获取一个特定的浏览器版本

<!-- <br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> 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或者锚链接

<!-- <br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> 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

<!-- <br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --> 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();
}

你可能感兴趣的:(spring,Ajax,敏捷开发,Rails,firefox)