HtmlAgilityPack 和 XPath 产生 2 个不同的结果

HtmlAgilityPack & XPath produce 2 differents results

我不明白 birthdateNode2 和 birthdateNode3 之间的这段代码有什么区别。

  1. 在这种情况下: 我可以通过 'birthdateNode3' 获得出生日期。 (birthdateNode2 为空)。
    为什么 birthdateNode2 和 birthdateNode3 不指向同一个位置?

  2. 在另一种情况下,html 比较旧,结构有点不同。未指定出生日期。 birthdateNode2 为空。 birthdateNode3 指向 'p' 但在下一个 .
    为什么 birthdateNode2 和 birthdateNode3 都不为空,因为没有指定生日?

感谢您的帮助。 文森特

对于 birthdateNode2,您正在 selecting li 元素的子节点,然后 select 从那里向下 select 一个 p 元素 - 所以你总是从 li 向下两层(记住 pchild::p 的缩写)。使用 birthdateNode3 你只会下降一级。