【问题标题】:html nested tables agility pack valid xpathhtml嵌套表敏捷包有效的xpath
【发布时间】:2010-12-19 18:17:52
【问题描述】:

假设嵌套表没有唯一属性( id 、 class 或其他任何东西)来获取所需的属性

doc.DocumentNode.SelectSingleNode("//table[@width='500']")

XPath 是否禁止在其路径中多次使用表?

foreach (HtmlNode table in doc.DocumentNode.SelectNodes("//table/tr/center/table"))

当 SelectNodes 返回 null 时抛出异常。

如果是这样,如何使用 Agility Pack 解决没有特定属性的嵌套表的 html 解析?

【问题讨论】:

    标签: html xpath html-agility-pack


    【解决方案1】:

    我只是错过了路径中的“td”标签。所以

    foreach (HtmlNode table in doc.DocumentNode.SelectNodes("//table/tr/td/center/table/tr/td/center/table"))
    

    确实有效。这实际上回答了我的问题。 假设父元素中存在唯一属性值,获取相同表的其他解决方法可能是

    HtmlNode tbl = doc.DocumentNode.SelectSingleNode("//td[@height='643']/center/table");
    

    【讨论】:

      猜你喜欢
      • 2016-06-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-16
      • 1970-01-01
      • 2012-08-09
      • 2012-07-18
      • 2011-01-26
      相关资源
      最近更新 更多