ASP.NET抓取網(wǎng)頁(yè)內(nèi)容的實(shí)現(xiàn)方法
本文實(shí)例講述了ASP.NET抓取網(wǎng)頁(yè)內(nèi)容的實(shí)現(xiàn)方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
一、ASP.NET 使用HttpWebRequest抓取網(wǎng)頁(yè)內(nèi)容
/// 用HttpWebRequest取得網(wǎng)頁(yè)源碼
/// 對(duì)于帶BOM的網(wǎng)頁(yè)很有效,不管是什么編碼都能正確識(shí)別
/// </summary>
/// <param name="url">網(wǎng)頁(yè)地址" </param>
/// <returns>返回網(wǎng)頁(yè)源文件</returns>
public static string GetHtmlSource2(string url)
{
//處理內(nèi)容
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; //當(dāng)前頁(yè)面的引用
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)頁(yè)內(nèi)容
{
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;
}
希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。
- asp.net中獲取遠(yuǎn)程網(wǎng)頁(yè)的內(nèi)容之一(downmoon原創(chuàng))
- asp.net下獲取遠(yuǎn)程網(wǎng)頁(yè)的內(nèi)容之二(downmoon原創(chuàng))
- asp.net 網(wǎng)頁(yè)編碼自動(dòng)識(shí)別代碼
- asp.net HttpWebRequest自動(dòng)識(shí)別網(wǎng)頁(yè)編碼
- asp.net(c#)做一個(gè)網(wǎng)頁(yè)數(shù)據(jù)采集工具
- HttpWebRequest和HttpWebResponse用法小結(jié)
- ASP.NET MVC中解析淘寶網(wǎng)頁(yè)出現(xiàn)亂碼問(wèn)題的解決方法
- asp.net 抓取網(wǎng)頁(yè)源碼三種實(shí)現(xiàn)方法
- C#中HttpWebRequest的用法詳解
- ASP.NET使用HttpWebRequest讀取遠(yuǎn)程網(wǎng)頁(yè)源代碼
相關(guān)文章
asp.net IList查詢數(shù)據(jù)后格式化數(shù)據(jù)再綁定控件
這篇文章送給.net初學(xué)者或者遇到類似問(wèn)題的朋友,就是IList如何格式化數(shù)據(jù)再綁定,我看到網(wǎng)上沒有多少朋友講到這方面的最基本的問(wèn)題,現(xiàn)在我簡(jiǎn)單說(shuō)說(shuō)吧,代碼我就截取其中一些講,如果不明白的朋友可以留言或者聯(lián)系我。2009-11-11用ASP.NET做的個(gè)性化的郵件發(fā)送系統(tǒng)
如果要你用ASP來(lái)做一個(gè)郵件發(fā)送系統(tǒng),你一定認(rèn)為這是一個(gè)比較復(fù)雜的工作。其實(shí)也的確是這樣。但當(dāng)他的后繼產(chǎn)品ASP.NET被推出以后,他的強(qiáng)大功能就使的這一切就變的相對(duì)簡(jiǎn)單了。真的這樣神奇么?我們就通過(guò)ASP.NET做一個(gè)郵件發(fā)送系統(tǒng),看看到底有什么奧秘,是不是真的簡(jiǎn)單。2008-02-02基于.NET的FluentValidation數(shù)據(jù)驗(yàn)證實(shí)現(xiàn)
這篇文章主要介紹了基于.NET的FluentValidation數(shù)據(jù)驗(yàn)證實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11剖析Asp.Net Web API路由系統(tǒng)---WebHost部署方式
這篇文章主要介紹了剖析Asp.Net Web API路由系統(tǒng)---WebHost部署方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-02-02asp.net簡(jiǎn)化接收參數(shù)值的函數(shù)
獲取querystring 參數(shù)名2008-05-05