【发布时间】:2022-01-09 03:59:29
【问题描述】:
我能够到达我想要提取的节点,但不知道如何在节点中分隔不同的标签。
附言我对正则表达式没意见;只是好奇是否存在使用 Html Agility Pack 的更简单方法。
代码:
...
...
HtmlNodeCollection nodes = webContent.DocumentNode.SelectNodes("//*[@id='node-name']/ul/li");
foreach (HtmlNode node in nodes) {
String link = ???; // extract the http link here (href)
String text = ???; // extract the inner text here
String nums = ???; // extract the content of <small> tag here
...
}
html 示例:
...
...
<ul class="some-class-name">
<li>
<a href="http://link-1.com">text for link 1<small>1</small></a>
</li>
<li>
<a href="http://link-2.org">text for link 2<small>2</small></a>
</li>
<li>
<a href="http://link-3.net">text for link 3<small>3</small></a>
</li>
</ul>
...
...
【问题讨论】:
-
你使用
HtmlAgilityPack(它现在有点……死了)而不是像 AngleSharp 这样更现代的库有什么原因吗? -
哇,我上次使用
AngleSharp(现在是几年前)它正在使用HtmlAgilityPack。这不似乎不再是这种情况了。向AngleSharp小组致敬,感谢@Dai 揭露这一点。
标签: c# html html-agility-pack