源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C#几种获取网页源文件代码的实例

  • 时间:2021-07-14 00:21 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C#几种获取网页源文件代码的实例
方法一:
[u]复制代码[/u] 代码如下:
using System.Text; using System.Net; private string getHtml(string url) { WebClient myWebClient = new WebClient(); byte[] myDataBuffer = myWebClient.DownloadData (url); return Encoding.Default.GetString(myDataBuffer); }
方法二:
[u]复制代码[/u] 代码如下:
public string getHttp(string HttpUrl,string RefererUrl) { string html = ""; try { MSXML2.XMLHTTP Http = new MSXML2.XMLHTTPClass(); xmlhttp.open("GET", Url, false, null, null); Http.open("GET",HttpUrl,false,null,null); Http.setRequestHeader("Referer",RefererUrl); //Http.setRequestHeader("Referer",RefererUrl); Http.setRequestHeader("Content-Type", "text/html;charset=gb2312"); Http.send(""); html = Encoding.Default.GetString((byte[])Http.responseBody); Http = null; } catch { } return html; } public bool getweb(string strURL,out string buf)   {    buf="";    try    {     //Uri url=new Uri(strURL,false);     HttpWebRequest request;     request = (HttpWebRequest)WebRequest.Create(strURL);     request.Method="POST"; //Post请求方式     request.ContentType="text/html;charset=gb2312"; //内容类型     string paraUrlCoded = System.Web.HttpUtility.UrlEncode(""); //参数经过URL编码     byte[] payload;     payload = System.Text.Encoding.GetEncoding("GB2312").GetBytes(paraUrlCoded); //将URL编码后的字符串转化为字节     request.ContentLength = payload.Length; //设置请求的ContentLength     Stream writer = request.GetRequestStream(); //获得请求流     writer.Write(payload,0,payload.Length); //将请求参数写入流     writer.Close(); //关闭请求流     HttpWebResponse response;     response = (HttpWebResponse)request.GetResponse(); //获得响应流     Stream s;     s = response.GetResponseStream();     StreamReader objReader = new StreamReader(s,System.Text.Encoding.GetEncoding("GB2312"));     string HTML = "";     string sLine ="";     int i = 0;     while (sLine!=null)     {      i++;      sLine = objReader.ReadLine();      if (sLine!=null)       HTML += sLine;     }     //HTML = HTML.Replace("<","<");     //HTML = HTML.Replace(">",">");     buf=HTML;     return true;    }    catch (Exception x)    {       buf=x.Message.ToString();     return false;       }   }
带Cookie:
[u]复制代码[/u] 代码如下:
CookieContainer cc = new CookieContainer(); public bool getweb(string strURL,out string buf)   {    buf="";    try    {     HttpWebRequest request;     request = (HttpWebRequest)WebRequest.Create(strURL);     request.Method="POST"; //Post请求方式     request.ContentType="text/html;charset=gb2312"; //内容类型     string paraUrlCoded = System.Web.HttpUtility.UrlEncode(""); //参数经过URL编码     byte[] payload;     payload = System.Text.Encoding.GetEncoding("GB2312").GetBytes(paraUrlCoded); //将URL编码后的字符串转化为字节     request.ContentLength = payload.Length; //设置请求的ContentLength     Stream writer = request.GetRequestStream(); //获得请求流     writer.Write(payload,0,payload.Length); //将请求参数写入流     writer.Close(); //关闭请求流     HttpWebResponse response;     response = (HttpWebResponse)request.GetResponse(); //获得响应流     Stream s;     s = response.GetResponseStream();     StreamReader objReader = new StreamReader(s,System.Text.Encoding.GetEncoding("GB2312"));     string HTML = "";     string sLine ="";     int i = 0;     while (sLine!=null)     {      i++;      sLine = objReader.ReadLine();      if (sLine!=null)       HTML += sLine;     }     buf=HTML;     return true;    }    catch (Exception x)    {       buf=x.Message.ToString();     return false;       }   }   public bool getweb(string strURL,out string buf,string postData)   {    buf="";    try    {       ASCIIEncoding encoding = new ASCIIEncoding();     byte[] data = encoding.GetBytes(postData);     HttpWebRequest request = (HttpWebRequest)WebRequest.Create(strURL);     request.Method = "POST";     request.ContentType = "application/x-www-form-urlencoded";     request.ContentLength = data.Length;     Stream newStream = request.GetRequestStream();     newStream.Write(data, 0, data.Length);     newStream.Close();     request.CookieContainer = cc;     HttpWebResponse response = (HttpWebResponse)request.GetResponse();     cc.Add(response.Cookies);     Stream stream = response.GetResponseStream();     string sHtml = new StreamReader(stream, System.Text.Encoding.Default).ReadToEnd();     buf=sHtml;     return true;    }    catch (Exception x)    {       buf=x.Message.ToString();     return false;       }   } private   string   getWebresourceFile1(string   url)     { WebClient   myWebClient   =   new   WebClient();    byte[]   myDataBuffer   =   myWebClient.DownloadData(url); string   SourceCode   =   Encoding.Default.GetString(myDataBuffer); saveSourceCode(SourceCode);                   return   SourceCode;       }
方法2
[u]复制代码[/u] 代码如下:
private   string   getWebresourceFile2(string   url)     { HttpWebRequest   request=(HttpWebRequest)WebRequest.Create(url);  HttpWebResponse   response=(HttpWebResponse)request.GetResponse();                    request.Method   =   "GET ";        Stream   receiveStream=response.GetResponseStream(); StreamReader   readStream=new   StreamReader(receiveStream,Encoding.Default); string   SourceCode=readStream.ReadToEnd();    saveSourceCode(SourceCode); response.Close();      readStream.Close(); return   SourceCode;       }
方法3
[u]复制代码[/u] 代码如下:
private   string   getWebresourceFile3(string   url)       { WebClient   wc   =   new   WebClient(); wc.Credentials   =   CredentialCache.DefaultCredentials; Byte[]   pageData   =   wc.DownloadData(url); string   SourceCode   =   Encoding.Default.GetString(pageData); saveSourceCode(SourceCode); wc.Dispose();  return   SourceCode;       }
方法4
[u]复制代码[/u] 代码如下:
private   string   getWebresourceFile4(string   url)     { WebClient   wc   =   new   WebClient(); wc.Credentials   =   CredentialCache.DefaultCredentials; Stream   resStream   =   wc.OpenRead(url); StreamReader   sr   =   new   StreamReader(resStream,System.Text.Encoding.Default); string   SourceCode   =   sr.ReadToEnd(); saveSourceCode(SourceCode); resStream.Close(); wc.Dispose();  return   SourceCode;       }
方法5
[u]复制代码[/u] 代码如下:
private   string   getWebresourceFile5(string   url)       { WebRequest   request   =   WebRequest.Create(url); WebResponse   response   =   request.GetResponse(); Stream   resStream   =   response.GetResponseStream();  StreamReader   sr   =   new   StreamReader(resStream,   System.Text.Encoding.Default); string   SourceCode   =     sr.ReadToEnd(); saveSourceCode(SourceCode); resStream.Close();  sr.Close(); return   SourceCode;       }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部