asp.net 抓取html内容,ASP.NET抓取网页内容的实现方法

本文实例讲述了ASP.NET抓取网页内容的实现方法。分享给大家供大家参考。具体实现方法如下:

一、ASP.NET 使用HttpWebRequest抓取网页内容

/// 方法一:比较推荐

/// 用HttpWebRequest取得网页源码

/// 对于带BOM的网页很有效,不管是什么编码都能正确识别

///

/// 网页地址"

/// 返回网页源文件

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#程序设计有所帮助。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
2010/12/30 v1.2版 改掉程序中所有的select标签 项目结构说明: \ ……\App_Data 项目数据库文件 (ACCESS2003) ……\bin\ …………\AjaxPro.2.dll .NET调用AJAX类库 …………\App_Code.dll 功能类文件 …………\App_Web_ka4newz2.dll *.aspx.cs文件打包 ……\JS\ …………\jquery-1.4.4.min.js JQuery库 …………\Script 系统自定义JS文件 ……\Default.aspx 系统功能页面 ……\Help.txt 帮助文档 ……\web.config 配置文件 ……\PrecompiledApp.config 发布配置文件 系统使用说明: 一、系统启动后在“抓取网页路径” 输入要抓取网页的URL 以文本内默认格式输入 选择“网页编码格式” (如果不知道网页格式可以更换不同选择项),然后点击“测试打开网页”。系统会 在页面右侧空白处显示页面源码,以及以小窗口形式显示要抓取的网页可视化界面。 二、在“列表定位标签”输入要抓取列表信息容器型标签。例如:DIV、UL、TABLE “筛选同类标签”作用是用来过滤页面上同类定位标签,然后点击“测试列表定位” 三、“抓取信息标签”是指列表后页面中要制定抓取的信息容器型标签。(如果抓取整页信息请为空),然后点 击“开始抓取列表内容”。 四、当抓取记录操作中出现抓取日志时。网页HTML字符串已经保存完毕。可是图片可能还在陆续保存。由于是WEB 形式所以无法得知何时抓取完毕,用户需长时间进程守候。 五、“抓取页面打包”是先前抓取的网页以及图片打包 六、项目DOWNLOADS中分HTML、IMAGES是保存抓取网页的信息 系统问题: 系统对网速要求很高,因为下载图片是多线程。 B/S模式程序响应可能超时而影响系统正常运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值