1
我正在使用HTMLAgilityPack。我有這樣的事情:找到沒有孩子的節點。如果它有任何<span>孩子,請忽略它
<div class="address">
<h3>Postadress</h3>
<div class="box-address">Box 27 </div>
<div class="post-address">
16493 KISTA
</div>
</div>
問題是還有其他<div class="address">
s。 所以我必須找到一個具有<h3>
孩子的文本「Postaddress」。 我需要提取的是值爲<div class="post-address">
即「16493 KISTA」。 還有其他記錄返回<div class="post-address">
有孩子,我不希望這些被返回。我只尋找<div class="post-address">
沒有孩子,只包含裸體的文字。
我的解決方案迄今:
var postAddressdiv = doc.DocumentNode.SelectNodes("//div[@class='address']");
if (postAddressdiv != null)
{
foreach (HtmlAgilityPack.HtmlNode node in postAddressdiv)
{
HtmlNode postAddress;
var h3 = node.Descendants("h3");
if (h3 != null)
{
if (h3.First().LastChild.InnerHtml == "Postadress")
{
MessageBox.Show("right place you are.");
postAddress = node.SelectSingleNode("//div[@class='post-address']");
var postAddressChildren = postAddress.Descendants();
if (postAddressChildren == null)
MessageBox.Show("found one!!!!");
}
}
}
}
但它不工作。我究竟做錯了什麼?謝謝。
爲什麼它「不工作」? – Default