本文主要和大家分享post提交獲得html頁面源碼的實現(xiàn)代碼,希望能幫助到大家。
/// <summary> /// 獲得頁面的html源碼 主要用于后臺生成靜態(tài)文件時獲得源碼 /// </summary> /// <param name="url"></param> /// <returns></returns> public static string GetPageHTML(string url) { string httpString = string.Empty; WebRequest request = WebRequest.Create(url); request.Timeout = 200000; using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) { if (response.StatusDescription.ToLower().Equals("ok")) { using (StreamReader writer = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("GB2312"))) { httpString = writer.ReadToEnd(); } } } return httpString; } /// <summary> /// 獲得頁面的html源碼 主要用于后臺生成靜態(tài)文件時獲得源碼UTF-8 /// </summary> /// <param name="url"></param> /// <returns></returns> public static string GetPageHTMLUTF8(string url) { string httpString = string.Empty; WebRequest request = WebRequest.Create(url); request.Timeout = 200000; using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) { if (response.StatusDescription.ToLower().Equals("ok")) { using (StreamReader writer = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("UTF-8"))) { httpString = writer.ReadToEnd(); } } } return httpString; } /// <summary> /// post提交JSON數(shù)據(jù)。支持.net4.0及以下的版本 /// </summary> /// <param name="url"></param> /// <param name="json"></param> /// <returns></returns> public static string GetHtmlByJson(string url, string json = "") { var result = string.Empty; try { var request = WebRequest.Create(url) as HttpWebRequest; request.ContentType = "text/json"; request.Method = "post"; //request.cookieContainer = _cookie; using (var streamWriter = new StreamWriter(request.GetRequestStream())) { streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); var response = (HttpWebResponse)request.GetResponse(); using (var reader = new StreamReader(response.GetResponseStream())) { result = reader.ReadToEnd(); } } } catch (UriFormatException uex) { // 出錯處理 } return result; } /// <summary> /// 利用WebClient 遠(yuǎn)程POST數(shù)據(jù)并返回數(shù)據(jù) /// </summary> /// <param name="strUrl">遠(yuǎn)程URL地址</param> /// <param name="strParams">參數(shù),要提交的JSON字符串</param> /// <param name="RespEncode">POST數(shù)據(jù)的編碼</param> /// <param name="ReqEncode">獲取數(shù)據(jù)的編碼</param> /// <returns></returns> public static string PostData(string strUrl, string strParams, Encoding RespEncode, Encoding ReqEncode) { return ""; } /// <summary> /// 執(zhí)行POST提交范例 /// </summary> /// <param name="url"></param> /// <param name="postdata">"LoginName=365admin&Password=fob123"</param> /// <returns></returns> public static string PostPageHTMLUTF8(string url, string postdata) { WebClient client = new WebClient(); System.Collections.Specialized.NamevalueCollection list = new System.Collections.Specialized.NamevalueCollection(); list.Add("opencheckindatatype", "3"); list.Add("starttime", "1492617600"); list.Add("endtime", "1492790400"); // "useridlist": ["james","paul"] list.Add("useridlist", "['TuHuaXing']"); byte[] j = client.UploadValues(url, list); //var dec = BitConverter.ToInt64(j,0); //string jS = BitConverter.ToString(j); //jS = Convert.ToString(jS,10); return System.Text.Encoding.Default.GetString(j); //目標(biāo)頁面獲取值 request.form["id"] }
相關(guān)推薦:
jquery獲得當(dāng)前html頁面源碼的方法_jquery
以上就是post提交獲得html頁面源碼的實現(xiàn)代碼的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!