C#解析html文档
2015-11-17 17:59
429 查看
当我们需要解析一个web页面的时候,如果非常简单,可以用字符串查找的方式,复杂一点可以用正则表达式,但是有时候正则很麻烦的,因为html代码本身就比较麻烦,像常用的img标签,这个东东到了浏览器上就没了闭合标签(一直还没搞懂为什么),想用XML解析,也是同样的原因根本解析不了,今天发现一个解析html控件,用了一下,非常好用。
这个控件叫做Html Agility Pack,主页在这儿:http://htmlagilitypack.codeplex.com/
这儿还有一篇blog介绍怎么使用的 (English):http://olussier.net/2010/03/30/easily-parse-html-documents-in-csharp/
我直接把例子贴这儿,一看就明白。因为是作为xml解析的,所以呢,少不了XPath,如果不懂这个东西的话,赶紧看看吧,现在xpath语法都扩展到css里面了,语法比较简单,先看看基础的就行了。
最基本的使用方法不是SelectSingleNode,而是GetElementById,这是与XmlDocument不同的地方。
使用xpath
One more
这个控件叫做Html Agility Pack,主页在这儿:http://htmlagilitypack.codeplex.com/
这儿还有一篇blog介绍怎么使用的 (English):http://olussier.net/2010/03/30/easily-parse-html-documents-in-csharp/
我直接把例子贴这儿,一看就明白。因为是作为xml解析的,所以呢,少不了XPath,如果不懂这个东西的话,赶紧看看吧,现在xpath语法都扩展到css里面了,语法比较简单,先看看基础的就行了。
最基本的使用方法不是SelectSingleNode,而是GetElementById,这是与XmlDocument不同的地方。
相关文章推荐
- HTML 外边距折叠,以及消除的办法
- 同域下父子页面的通信
- html框架frame iframe
- Sublime插件Emmet安装与使用
- html.encode('gbk','ignore')
- HTML设计模式日常学习笔记整理
- HTML标签
- HTML基础学习 a标签的使用
- 仿淘宝右侧tab栏切换
- 利用Html 5的canvas标签绘制水流和水池动画
- 关于html水平垂直居中的一些总结吧
- html页面里面的标签转换
- HTML中id与name的区别
- HTML 5 Web 存储 与 应用缓存
- HTML <ol> 标签的 type 属性
- HTML标签详解之格式标签
- Get请求和Post请求的区别
- html中meta标签的作用
- html实现带斜线的表头
- 如何让HTML在手机上实现直接拨打电话以及发送短信?