上次说到了用HttpWebRequest来采集网站信息
然而对于采集下来的html源码怎么来解析呢,这个问题网上很多人都说采用正则来实现,这个的要求是高的,也会很烦锁。
相对于一个简单的页面来说这个方法还行,如果要采集的数据很多的话就要写N多个正则,N*M次的判断来取得自己想要的数据,这个工作量是很大的,并且对采集的功能上也会有影响。
有人会问有没有方法可以像解析xml那样来解析html呢,答案是肯定的。
在http://www.codeplex.com/
上有一个Project名字叫
具体的可以到Project主页去下载相关的版本,对应相应的.net framework
示例代码如下
string html = WebTask.GetHtmlFromUrl(url);
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);
Console.WriteLine(doc.DocumentNode.SelectSingleNode("/table/tr[3]/td[2]").InnerHtml);
对于这个xpath可以使用firebug来获取,不用再这么麻烦来使用,详细可看图
当然还有一个工具TPAssistant
获取更精确,更方便
本来打算快点把post分页的也快点写出来的,结果试了几个相应的网站,成功率不是很高,代码还在优化
等完成后会尽快发出给大家分享。
技术交流群:199703615
注明:javaeye采集。
- 大小: 79.8 KB
分享到:
相关推荐
C#(也称Csharp)在多线程下并发执行HTTP请求的实现,采用C#封装HttpWebRequest类开发的多线程并发采集程序源码文档,文档中详细说明了HttpWebRequest并发HTTP请求实现网站采集的方法,经过测试同时并发1000+不是问题...
C#中HttpWebRequest使用介绍 GET HTTP HTTPS 请求
httpwebrequest调用webservice返回数据
1.这是一个用HttpWebRequest类构建完整Http多部请求上传文件的示例 2.上传地址是金山文档预览的地址,所以,只要上传的是word、pdf、excel一类的文档,可以通过返回的地址直接在线预览,是一种偷懒的文档在线浏览...
C# 多线程基本于httpwebrequest实现的下载功能 每个线程均可以通过事件追踪情况
C#实现通过HttpWebRequest发送POST请求实现网站自动登陆
HttpWebRequest C# WEBAPI 测试案例;HttpWebRequest C# WEBAPI 测试案例
C#使用HttpWebRequest自动更新客户端应用程序
c# 使用WebRequest实现多文件上传.docx
使用HttpWebRequest访问网页
C# asp.net http HttpWebRequest模拟浏览器请求下载文件到本地
HttpWebRequest: 命名空间: System.Net,这是.NET创建者最初开发用于使用HTTP请求的标准类。使用HttpWebRequest可以让开发者控制请求/响应流程的各个方面,如 timeouts, cookies, headers, protocols。另一个好处...
1、启动和暂停下载 2、展示下载进度
本示例使用C#构造SOAP信息,通过HttpWebRequest调用java编写的带有Windows身份验证的WebService,代码中详细注释了每行代码的功能与作用; 对应文章:http://blog.csdn.net/cgs_______/article/details/77894599
c# HttpWebRequest_和HttpWebResponse
主要介绍了C#中HttpWebRequest的用法,以实例的形式详细叙述了HttpWebRequest类中GET与POST的用法,非常具有参考借鉴价值,需要的朋友可以参考下
用c#实现的文件上传客户端,能显示上传进度.程序能正确运行!
本文将讲述如何采用HttpWebRequest方式每次读取固定大小数据片段(如4KB)发送至服务器,为大文件上传提供解决方案,本文还将详细讲述如何将“文件上传”功能做为用户自定义控件,实现模块重用。