我有一行是html
返回的一部分:
<h1 id="pgName" class="floatLVal tight">IBM Dividend Yield (TTM):</h1><span id="pgNameVal">3.74% for May 31, 2017</span>
我读如下。我看到了节点,但我无法在任何(TTM):
字段中看到singleNode
之后的任何文字,例如,innerhtml
的一部分。我想提取2017年5月31日的#34; 3.74%&#34;部分。
提取此信息的正确方法是什么?
HtmlDocument document = ...
var singleNode = document.DocumentNode.SelectSingleNode("//h1[@class='floatLVal tight']");
答案 0 :(得分:1)
span
标记未位于h1
标记中。获得h1
var h1 = document.DocumentNode.SelectSingleNode("//h1[@class='floatLVal tight']");
var span = h1.NextSibling;
var text = span.InnerHtml; // "3.74% for May 31, 2017"
或者通过id获取span
节点:
var span = document.DocumentNode.SelectSingleNode("//span[@id='pgNameVal']");
var text = span.InnerHtml; // "3.74% for May 31, 2017"