使用html Agility Pack選擇屬性值

.net c# html-agility-pack xpath

我正在嘗試使用html敏捷包和此xpath從html文檔中檢索特定圖像:

//div[@id='topslot']/a/img/@src

據我所知,它找到了src-attribute,但它返回了img-tag。這是為什麼?

我希望設置InnerHtml / InnerText或其他東西,但兩者都是空字符串。 OuterHtml設置為完整的img-tag。

有沒有Html Agility Pack的文檔?

一般承認的答案

Html Agility Pack 不支持屬性選擇。


熱門答案

如果您使用HtmlNavigator則可以直接獲取屬性。

//Load document from some html string
HtmlDocument hdoc = new HtmlDocument();
hdoc.LoadHtml(htmlContent);

//Load navigator for current document
HtmlNodeNavigator navigator = (HtmlNodeNavigator)hdoc.CreateNavigator();

//Get value from given xpath
string xpath = "//div[@id='topslot']/a/img/@src";
string val = navigator.SelectSingleNode(xpath).Value;



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