HtmlAgilityPack 是一款开源的HTML解析组件,其优点是可以自动修复未闭包的HTML标签,解析速度快,采用的是XPath方式定位元素。
Nuget - HtmlAgilityPack
XPath 教程
下面的代码示例,从HTML中解析出所有的链接
Dim html As String = "HTML文档"
Dim doc As New HtmlAgilityPack.HtmlDocument
doc.OptionFixNestedTags = True '自动修复错误标签
doc.LoadHtml(html)
Dim sb As New System.Text.StringBuilder
For Each node In doc.DocumentNode.SelectNodes("//a[@href]")
' 在这里处理每一个元素
sb.AppendLine(node.InnerText) '内部文本
sb.AppendLine(node.Attributes("href").Value) '获取属性值
node.Attributes("href").Value = "#" '也可以修改内容
Next
doc.Save("保存文档.html")