asp.net 解析HTML问题,大家请进....

来源:百度知道 编辑:UC知道 时间:2024/05/15 08:37:25
我自己做了一个网页,这个网页通过一个外部URL(如:www.baidu.com),而我在我的.net项目里面需要通过这个URL拿到这个URL想对应网页的代码,然后在从这个HTML代码里面取得我想要的信息,比如我想要取得这标记里面的<table>里面所有的信息,请问怎么遍历这个HTML文档呢?是XMl还好说,可是这是个强类型的页面,通过URl我利用了HttpWebRequest和HttpWebResponse这两个类已经取得了我想要的HTML代码了!现在的问题就是怎么从这代码里面循环读取<table>标记里面的所有内容?如果是用正则表达式那么正则表达式是怎么写的?各位大虾们.....
用DOM解析好还是用正则好?DOM怎么用?
我想要正则表达式代码啊!呜呜.......

首先 用文件流 读出 这个 HTML文件
存到string中

然后搜索匹配的 字符串 <table>建议给table加上ID
因为会有好多个table
找本C#的书 看看 字符串 处理相关的章节

调用微软的COM,叫什么我不记得了,但是只要装了IE就有一个类似HTMLDOM的COM可以使用,就是用来解析HTML数据的,适用方法和JS里面的Document类一样,其实就是Document类。如果找不到这个COM,有个笨方法,就是后台创建一个IE控件,然后通过这个空间的Document属性访问HTML。
网上我下过一个HTML2XHTML的控件,找不到了,原来做的时候是用这个控件转换成XML然后解析的。

要是解析不复杂,直接使用正则表达式吧

正则表达式,
如<table ...>:
<table.*?>

(?s)<table.*?>.*?</table>