程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> ASP.NET抓取網頁內容的實現方法

ASP.NET抓取網頁內容的實現方法

編輯:關於ASP.NET

     這篇文章主要介紹了ASP.NET抓取網頁內容的實現方法,涉及使用HttpWebRequest及WebResponse抓取網頁內容的技巧,需要的朋友可以參考下

       

    本文實例講述了ASP.NET抓取網頁內容的實現方法。分享給大家供大家參考。具體實現方法如下:

    一、ASP.NET 使用HttpWebRequest抓取網頁內容

    代碼如下: /// <summary>方法一:比較推薦
    /// 用HttpWebRequest取得網頁源碼
    /// 對於帶BOM的網頁很有效,不管是什麼編碼都能正確識別
    /// </summary>
    /// <param name="url">網頁地址" </param>
    /// <returns>返回網頁源文件</returns>
    public static string GetHtmlSource2(string url)
    {
    //處理內容
    string html = "";
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    request.Accept = "*/*"; //接受任意文件
    request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.1.4322)"; //
    request.AllowAutoRedirect = true;//是否允許302
    //request.CookieContainer = new CookieContainer();//cookie容器,
    request.Referer = url; //當前頁面的引用
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    Stream stream = response.GetResponseStream();
    StreamReader reader = new StreamReader(stream, Encoding.Default);
    html = reader.ReadToEnd();
    stream.Close();
    return html;
    }

     

    二、ASP.NET 使用 WebResponse 抓取網頁內容

    代碼如下: public static string GetHttpData2(string Url)
    {
    string sException = null;
    string sRslt = null;
    WebResponse oWebRps = null;
    WebRequest oWebRqst = WebRequest.Create(Url);
    oWebRqst.Timeout = 50000;
    try
    {
    oWebRps = oWebRqst.GetResponse();
    }
    catch (WebException e)
    {
    sException = e.Message.ToString();
    }
    catch (Exception e)
    {
    sException = e.ToString();
    }
    finally
    {
    if (oWebRps != null)
    {
    StreamReader oStreamRd = new StreamReader(oWebRps.GetResponseStream(), Encoding.GetEncoding("utf-8"));
    sRslt = oStreamRd.ReadToEnd();
    oStreamRd.Close();
    oWebRps.Close();
    }
    }
    return sRslt;
    }

     

    希望本文所述對大家的C#程序設計有所幫助。

     
    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved