gpt4 book ai didi

c# - HTML Agility - 寻找正确的节点

转载 作者:太空宇宙 更新时间:2023-11-03 13:25:41 25 4
gpt4 key购买 nike

我知道有很多关于 HTML 敏捷性的问题,但我找不到解决问题的方法。

我从加载的 HTML 页面中获得了以下片段:

<div id="packageInfo" >
<div id="package_text" class="texts">Packages
<span id="numberOfPackages">1</span>
</div>
<div class="texts" style="width: 200px;"> <-- THIS IS THE NODE I WANT TO FETCH
Productnumber: 21036
<br />
Width:29cm
<br />
Height:13cm
<br />
Length:212cm
<br />
Weight:37,5kg
<br />
Number: 1<br />
</div>
</div>

请注意这一行:

<div class="texts" style="width: 200px;"> <-- THIS IS THE NODE I WANT TO FETCH

我试过了

HtmlNode temp = htmlDocument.DocumentNode.SelectSingleNode(".//div[@id='package_text']");
string test = temp.SelectSingleNode("//div[@class='texts']").InnerText.Trim();

但这会返回 null。

然而,以下是有效的(但没有给我我需要的):

HtmlNode temp = htmlDocument.DocumentNode.SelectSingleNode(".//div[@id='package_text']");
string test = temp.SelectSingleNode("//span[@id='numberOfPackages']").InnerText.Trim();

我承认我没有正确理解XPATH

我在 HTML 中有几个条目:

<div class="texts">

所以选择正确的是很重要的。

我也四处寻找使用 StreamPosition og LineNumber 的解决方案,但没有成功。

最佳答案

<div class="texts">不在里面<div id="package_text"> , 它在 <div id="package_text"> 旁边反而。

你可以试试这个 XPath :

.//div[@id='package_text']/following-sibling::div[@class='texts']

关于c# - HTML Agility - 寻找正确的节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22527462/

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