C#抓取网页的几种方法的代码

在学习过程中,将做工程过程中重要的一些内容片段做个收藏,如下的内容段是关于C#抓取网页的几种方法的内容,希望能对大家有较大用处。

    public static string GetHtmlSource2(string  url)
    {
        string html = "";
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);


        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        Stream stream = response.GetResponseStream();
        StreamReader reader = new StreamReader(stream, Encoding.Default);
        html = reader.ReadToEnd();
        stream.Close();


        return html;
    }

方法2–usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Web;usingSystem.IO;usingSystem.Text;usingSystem.Net;namespaceMySql{publicclassGetHttpData{publicstaticstringGetHttpData2(stringUrl){stringsException=null;stringsRslt=null;WebResponseoWebRps=null;WebRequestoWebRqst=WebRequest.Create(Url);oWebRqst.Timeout=50000;try{oWebRps=oWebRqst.GetResponse();}catch(WebExceptione){sException=e.Message.ToString();}catch(Exceptione){sException=e.ToString();}finally{if(oWebRps!=null){StreamReaderoStreamRd=newStreamReader(oWebRps.GetResponseStream(),Encoding.GetEncoding(“utf-8”));sRslt=oStreamRd.ReadToEnd();oStreamRd.Close();oWebRps.Close();}}returnsRslt;}}}{–写法3

{
    try
    {
        string charSet = null;
        if (charSets.Length == 1) {
            charSet = charSets[0];
        }


        myWebClient.Credentials = CredentialCache.DefaultCredentials;
        byte[] myDataBuffer = myWebClient.DownloadData(url);
        string strWebData = Encoding.Default.GetString(myDataBuffer);


        string webCharSet = charSetMatch.Groups[2].Value;
        if (charSet == null || charSet == "")
            charSet = webCharSet;


        if (charSet != null && charSet != "" && Encoding.GetEncoding(charSet) != Encoding.Default)
        {
            strWebData = Encoding.GetEncoding(charSet).GetString(myDataBuffer);
        }
        else {
            strWebData = Encoding.GetEncoding("utf-8").GetString(myDataBuffer);
        }
        return strWebData;
    }
    catch (Exception e) { return ""; }
}

你可能感兴趣的:(C#抓取网页的几种方法的代码)