本文實例講述了ASP.NET抓取網(wǎng)頁內容的實現(xiàn)方法。分享給大家供大家參考。具體實現(xiàn)方法如下:
一、ASP.NET 使用HttpWebRequest抓取網(wǎng)頁內容
復制代碼 代碼如下:
/// summary>方法一:比較推薦
/// 用HttpWebRequest取得網(wǎng)頁源碼
/// 對于帶BOM的網(wǎng)頁很有效,不管是什么編碼都能正確識別
/// /summary>
/// param name="url">網(wǎng)頁地址" /param>
/// returns>返回網(wǎng)頁源文件/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 抓取網(wǎng)頁內容
復制代碼 代碼如下:
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#程序設計有所幫助。
您可能感興趣的文章:- asp.net中獲取遠程網(wǎng)頁的內容之一(downmoon原創(chuàng))
- asp.net下獲取遠程網(wǎng)頁的內容之二(downmoon原創(chuàng))
- asp.net 網(wǎng)頁編碼自動識別代碼
- asp.net HttpWebRequest自動識別網(wǎng)頁編碼
- asp.net(c#)做一個網(wǎng)頁數(shù)據(jù)采集工具
- HttpWebRequest和HttpWebResponse用法小結
- ASP.NET MVC中解析淘寶網(wǎng)頁出現(xiàn)亂碼問題的解決方法
- asp.net 抓取網(wǎng)頁源碼三種實現(xiàn)方法
- C#中HttpWebRequest的用法詳解
- ASP.NET使用HttpWebRequest讀取遠程網(wǎng)頁源代碼