xpath 논리가 잘못된 부분을 볼 수 없습니다.xpath를 사용하여 XML 섹션으로 이동
여기는 transversing 작업을하는 큰 xml 섹션입니다. 내 목표는 내가이와
.SelectNodes("//div/span['pp-headline-item pp-headline-phone']/../..")
을 사용하여 마스터 XML 파일의 나가 XML의이 덩어리에서 다양한 데이터 포인트를 추출하는 것입니다
<div>
<div></div>
<span class="pp-headline-item pp-headline-phone">
<span class="telephone" dir="ltr">
<nobr>(732) 562-1312</nobr>
<span class="pp-headline-phone-label" style="display:none">()</span>
</span>‎
</span>
<span> · </span>
<span class="pp-headline-item pp-headline-authority-page">
<span>
<a href="http://maps.google.com/local_url?q=http://www.fed.com/q=07746+pizza">
<span>fed.com</span>
</a>
</span>
</span>
</div>
합니다 (html로 민첩성 팩을 사용하여 메신저에주의) 나는 위에서 설명한 모든 섹션을 얻을 것으로 기대하고 있으므로 반복 할 수 있고 웹 사이트, 전화, 주소 같은 것을 추출 할 수 있습니다. ...
문제는 내가 반복 할 때이 노드 세트를 내가 원하는 데이터 포인트에 도달 할 때입니다. 노드 집합은 위에 설명 된 노드 집합이 아닙니다.
내 논리는 nodset으로 최상위 div에서 노드 집합을 추출하고 xpath로 반복 할 때 원하는 데이터 점에 노드 집합을 추출하는 것입니다.
foreach (HtmlNode n in BuizRowsgoogMaps)
{
//get phone number
if (n.SelectSingleNode("span/nobr").InnerHtml != null)
{
strPhone = n.SelectSingleNode("span/nobr").InnerHtml;
//get phone site
strSite = n.SelectSingleNode("//span['pp-headline-item pp-headline-authority-page']/span/a/span").InnerHtml;
}
}
내가 내 XPath의 내가 원하는 것을 얻을 함께 메쉬 해달라고 생각하지만 난 내 표현의 유효성을 검사 할 때 나는 내 생각을 확인하기 위해 사용 ... 원하는 결과를 얻을 :
내가 이렇게 그것을 할 그것은 지혜의 끝에서 저를 떠나 작품 :
//div/span['pp-headline-item pp-headline-phone']/../../span['pp-headline-item pp-headline-phone']/span/nobr