使用VB.net HTML AgilityPack解析链接和表

时间:2011-04-18 03:32:26

标签: .net vb.net html-agility-pack

我正在尝试进行一些屏幕抓取,并发现了HTML AgilityPack,但在查找如何在VB.net中使用它时遇到了一些麻烦。

如果我知道HREF中包含的文本,我想要做的第一件事就是找到HREF标记的URL字符串。

我要做的第二件事是解析一个HTML表格,遍历每一行,然后提取数据,以便将其保存到数据库中(经过一些基本的分析)。

1 个答案:

答案 0 :(得分:1)

这是SO上的一个很好的起始链接:How to use HTML Agility pack

另见:HtmlAgilityPack example for changing links doesn't work. How do I accomplish this?

而且:Finding all the A HREF Urls in an HTML document (even in malformed HTML)

要查找特定的HREF,xpath语法将为“// a [@ href ='your url']”,意思是:“获取任何HREF属性等于'your url'的A标记。<​​/ p>

修改

如果您只知道文字,要查找HREF,例如,如果您有html文字“<a href="homepage.html">Cars</a>”并查找homepage.html,那么您就是这样做的。

        string s = @"<a href=""homepage.html"">Cars</a>";

        HtmlDocument doc = new HtmlDocument();
        doc.LoadHtml(s);

        HtmlNode node = doc.DocumentNode.SelectSingleNode("//a[text()='Cars']");
        Console.WriteLine("href=" + node.GetAttributeValue("href", null));