WebRequest post讀取源碼

     

       static string GetHTML()
        {
            string url = "
http://flights.ctrip.com/booking/bjs-sha----adu-1/";


            string param = "dayoffset=3&ddate1=2013-01-18&dcityname1=%u5317%u4eac&acityname1=%u4e0a%u6d77";


            Uri uri = new Uri(url);


            WebRequest myReq = WebRequest.Create(uri);


            myReq.Method = "Post";

 

            myReq.Headers.Add("Accept-Encoding", "gzip,deflate,sdch");


            byte[] byData = Encoding.Default.GetBytes(param);  //獲取發送字符串編碼後的長度

 

            myReq.ContentLength = byData.Length;


            Stream reqStrem = myReq.GetRequestStream(); //返回請求流


            reqStrem.Write(byData, 0, byData.Length);   //在返回的請求流在寫入編碼後的長度


            reqStrem.Close();


            WebResponse result = myReq.GetResponse();  //返回響應


            Stream recStream = result.GetResponseStream();  //返回響應流

 

            //如果是Gzip方式則需要解壓
            recStream = new GZipStream(recStream, CompressionMode.Decompress);

 

                    //初始化StreamReader

            StreamReader redStream = new StreamReader(recStream, System.Text.Encoding.Default);         

 

            string strHTML = redStream.ReadToEnd();  //讀取流。轉換爲字符串


            redStream.Close();


            recStream.Close();


            result.Close();

 

            return strHTML;


        }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章