【发布时间】:2012-08-11 04:02:30
【问题描述】:
我想从各种网站提取信息。我正在使用 HtmlAgilityPack 和 Linq to XML。到目前为止,我已经设法通过以下方式从网站中的单个节点中提取值:
var q = document.DocumentNode.DescendantNodes()
.Where(n => n.Name == "img" && n.Id == "GraphicalBoard001")
.FirstOrDefault();
但我对以“GraphicalBoard”开头的整个 img 集合非常感兴趣。我试过类似的东西:
var q2 = document.DocumentNode.DescendantNodes()
.Where(n => n.Name == "img" && n.Id.Contains("GraphicalBoard"))
.Select...
但似乎 linq 不喜欢 Contains 方法,因为我在智能感知中丢失了 Select 选项。如何提取 Id 以“GraphicalBoard”开头的所有 img-tags?
【问题讨论】:
-
您意识到您没有关闭
Where()通话对吗? -
啊.. 这确实有点帮助。但是我该如何重写它以使其返回一个集合而不是 FirstOrDefault()?
标签: linq linq-to-xml html-agility-pack