HTML Agility pack +按內部文本選擇節點

c#-4.0 html-agility-pack xpath

我已經掌握了使用html敏捷包來查找使用其屬性和xpath的特定節點。問題是,我一直在為我的每個項目手動執行此操作(打開網站html並掃描具有我需要的文本的節點)。有沒有辦法通過內部文本選擇單個節點?這樣可以更輕鬆地為內容方案相同的網站編寫更新腳本,但屬性標記會隨時間更改值。提前致謝!

熱門答案

如果您提供了示例HTML會更好,但是由於您沒有,我們假設我們有包含此標記的HTML:

<body>
    <div class="foo">bar</div>
</body>

您可以使用HtmlAgilityPack的SelectSingleNode()和XPath來選擇<div>的屬性,如下所示:

myHtmlDocument.DocumentNode.SelectSingleNode("//div[@class='foo']");

或者您可以通過內部文本選擇相同的內容,如下所示:

myHtmlDocument.DocumentNode.SelectSingleNode("//div[.='bar']");

希望這有幫助。



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