欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

htmlunit入门

程序员文章站 2022-05-06 08:46:31
...
示例1:获取oschina网站的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.oschina.net " );
         System.out.println(htmlPage.getTitleText());
         System.out.println(htmlPage.getTextContent());

    }
可以看见打印出:开源中国 - 找到您想要的开源软件,分享和交流
示例二:获取一个特定的浏览器版本
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();
}


转载于:https://my.oschina.net/liangtee/blog/106210