利用httpclient來模擬登陸操作

          如果有一個網站的url是http://xxx.xxx.xxx,登陸的動作是login.do其中userId表示變量名 username表示內容,密碼同理
           1 public static String getHttpContent(String loginForm, String url, String userId, String passwordId,
           2             String username, String password) throws Exception {
           3         String responseString = "";
           4         HttpClient conn = new HttpClient();
           5         if (!loginForm.equals("")) {
           6             UTF8PostMethod signinPost = new UTF8PostMethod(loginForm);
           7             signinPost.addParameter(userId, username);
           8             signinPost.addParameter(passwordId, password);
           9             conn.executeMethod(signinPost);
          10         }
          11         UTF8PostMethod postMethod = new UTF8PostMethod(url);
          12         int statusCode = conn.executeMethod(postMethod);
          13         if (statusCode > 300) {
          14             Header header = postMethod.getResponseHeader("location");
          15             String location = null;
          16             if (header != null) {
          17                 location = header.getValue();
          18                 System.out.println("The page was redirected to:" + location);
          19                 postMethod = new UTF8PostMethod(location);
          20             }
          21         }
          22         String serverPath = HttpUtils.getServerContext(url);
          23         String host = HttpUtils.gethost(url);
          24         String[] item = url.split("/");
          25         responseString = postMethod.getResponseBodyAsString();
          26         if (responseString == null)
          27             responseString = "此網址內容為空";
          28         if (item.length > 4) {
          29             if (responseString.replace("/" + item[3], item[0+ "//" + item[2+ "/" + item[3]) != null) {
          30                 responseString = responseString.replace("/" + item[3], item[0+ "//" + item[2+ "/" + item[3]);
          31             }
          32         } else {
          33             if (responseString.replace("/" + item[3], item[0+ "//" + item[2]) != null) {
          34                 responseString = responseString.replace("/" + item[3], item[0+ "//" + item[2]);
          35             }
          36         }
          37 return responseString;

          38 }



          posted on 2010-03-02 13:15 Cloud kensin 閱讀(337) 評論(0)  編輯  收藏 所屬分類: Java

          <2010年3月>
          28123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          導航

          統計

          常用鏈接

          留言簿(4)

          隨筆分類

          相冊

          相冊

          搜索

          最新評論

          主站蜘蛛池模板: 邢台市| 天气| 衡山县| 通海县| 南宁市| 鸡东县| 福清市| 平和县| 交口县| 库车县| 莎车县| 昭通市| 宁安市| 崇文区| 集贤县| 敦煌市| 云和县| 遂宁市| 外汇| 图们市| 台东市| 凉山| 历史| 芜湖市| 十堰市| 济南市| 八宿县| 肃北| 丹东市| 庆安县| 当涂县| 平和县| 阳高县| 离岛区| 梁平县| 灵石县| 三穗县| 饶河县| 石泉县| 安远县| 遵化市|