提取 <span /> 部分 html 节点
Extracting <span /> part of html node
我有一行是 html
返回的一部分:
<h1 id="pgName" class="floatLVal tight">IBM Dividend Yield (TTM):</h1><span id="pgNameVal">3.74% for May 31, 2017</span>
我阅读如下。我看到了节点,但在任何 singleNode
字段中看不到 (TTM):
之后的任何文本,例如,作为 innerhtml
的一部分。我想提取“2017 年 5 月 31 日的 3.74%”部分。
提取此信息的正确方法是什么?
HtmlDocument document = ...
var singleNode = document.DocumentNode.SelectSingleNode("//h1[@class='floatLVal tight']");
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"
我有一行是 html
返回的一部分:
<h1 id="pgName" class="floatLVal tight">IBM Dividend Yield (TTM):</h1><span id="pgNameVal">3.74% for May 31, 2017</span>
我阅读如下。我看到了节点,但在任何 singleNode
字段中看不到 (TTM):
之后的任何文本,例如,作为 innerhtml
的一部分。我想提取“2017 年 5 月 31 日的 3.74%”部分。
提取此信息的正确方法是什么?
HtmlDocument document = ...
var singleNode = document.DocumentNode.SelectSingleNode("//h1[@class='floatLVal tight']");
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"