使用HTML Agility Pack抓取元標記和註釋

.net c# html-agility-pack html-parsing

我一直在尋找使用HTML Agility Pack的教程,因為它似乎做了我想做的一切,但似乎對於這樣一個強大的工具,它在互聯網上幾乎沒有噪音。

我正在編寫一個簡單的方法,它將根據名稱檢索任何給定的標記:

public string[] GetTagsByName(string TagName, string Source) {
    ...
}

這可以使用正則表達式輕鬆完成,但我們都知道使用正則表達式解析HTML是不對的。到目前為止,我有以下代碼:

public string[] GetTagsByName(string TagName, string Source) {
    ...
}

我希望能夠首先從HTML中刪除所有註釋,然後根據其名稱返回正確的標記。如果可能的話,我還想根據屬性返回某些元標記,例如機器人。我對xpath不太好,所以任何幫助都會很好。

任何幫助將非常感激。

一般承認的答案

HtmlAgilityPack的HtmlDocument實現了IXpathNavigable ,因此它使用標準的.NET XPath引擎。任何XPath 1.0文檔都適用,特別是如果它涉及System.Xml.XPath。

“// comment()”查找所有評論
“// meta”找到所有“元”元素

HtmlDocument的設計看起來非常像XmlDocument ,因此有關它的示例和教程將在某種程度上適用。

一些MSDN鏈接:




許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因