gpt4 book ai didi

xpath - 使用HTML Agility Pack从特定节点捕获内部文本

转载 作者:行者123 更新时间:2023-12-03 16:52:23 24 4
gpt4 key购买 nike

我正在尝试从以下html代码段中提取文本“ Record No:1”和两个日期:

<table class="Report">
<tbody>
<tr>
<td>
<font><b>Record No: 1</b><br>
<i>Original Date</i>: 12/16/2011<br>
<i>Original Entered Date</i>: 12/16/2011
<br>
<br>
</font>
</td>
</tr>
</tbody>
<table>


使用HTMLAgilityPack和以下代码,我已经获得了记录号,但是不确定如何获取日期。

var recordNum =report.Descendants()
.Where(a=>a.InnerText.Contains("Record No:"))
.Where(a => a.Name == "#text")
.First().InnerText;


我需要以某种方式能够在“原始日期”节点之后获取文本。

最佳答案

我需要以某种方式能够在“原始日期”节点之后获取文本。


您可以使用以下XPath选择位于i元素之后的文本节点,其中内部文本等于“原始日期”:

//i[.='Original Date']/following-sibling::text()


使用XPath如下,例如:

var doc = new HtmlDocument();
....
var xpath = "//i[.='Original Date']/following-sibling::text()";
var result = doc.DocumentNode.SelectSingleNode(xpath);
Console.WriteLine(result.InnerText);


Demo

输出:

: 12/16/2011

关于xpath - 使用HTML Agility Pack从特定节点捕获内部文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40552750/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com