小菜毛毛技术分享

与大家共同成长

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  164 Posts :: 141 Stories :: 94 Comments :: 0 Trackbacks
刚换了项目组,接触到了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();
}


posted on 2010-05-28 15:32 小菜毛毛 阅读(16660) 评论(2)  编辑  收藏 所属分类: htmlunit

Feedback

# re: htmlunit 示例 2012-03-19 19:26 11
11  回复  更多评论
  

# re: htmlunit 示例[未登录] 2012-04-11 17:28 222


你好,我是htmlunit使用者,在使用中我遇见了一个问题 textpage 和htmlpage什么区别,在中我要做的就是根据一个请求返回一个结果...不知

道如何做!!!!朋友可以的话联系我下,我的QQ 是452276647,邮箱:jccmjl@163.com 万分感谢!!!

  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: