小菜毛毛技術分享

          與大家共同成長

            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 小菜毛毛 閱讀(16681) 評論(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 萬分感謝!!!

            回復  更多評論
            


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 合川市| 临夏县| 斗六市| 清河县| 乐东| 临高县| 房山区| 彭山县| 大邑县| 滦平县| 宝丰县| 望城县| 会同县| 临夏市| 峨山| 宁河县| 灌云县| 苍南县| 高淳县| 芜湖市| 建德市| 仙居县| 锡林郭勒盟| 台山市| 彭泽县| 兴化市| 呼伦贝尔市| 定远县| 革吉县| 利津县| 灯塔市| 平塘县| 通化市| 惠来县| 景谷| 河南省| 沙坪坝区| 旅游| 珲春市| 龙游县| 莱阳市|