C #에서 XPath로 SelectedNode의 개수를 얻는 방법?

c# count html-agility-pack xpath

문제

내 응용 프로그램에서 HTMLAgilityPack을 사용하고 SelectedNodes의 항목 (노드) 수를 아래의 코드로 가져 오려고합니다.

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(webBrowser1.DocumentText);
var tagListe = doc.DocumentNode.SelectNodes("//a[@href]");
var divListe = doc.DocumentNode.SelectNodes("//div[@class='o']");

처음에는 href를 얻는 것이 성공적으로 실행되었지만 두 번째 것은 "o"라는 특수 클래스를 얻는 것을 선호합니다. 오류가있었습니다.

.Count를 사용하고 싶지만 오류가 있습니다. 또한 foreach 루프는 태그 href 속성을 요청한 전나무 selectedNodes에 대해 실행됩니다. 그리고 클래스 필터링을 위해 실행되지 않았습니다.

doc.DocumentNode.SelectNodes("//div[@class='o']") 카운트를 얻으려면

고마워, Caglar

수락 된 답변

HTMLAgilityPack 에서 구체적인 방법을 모르지만 일반 XPath에서는 다음과 같이 할 수 있습니다.

count(//div[@class='o'])

.SelectNodes 에는이 XPath를 제대로 사용할 수 없지만 Evaluate , SelectSingle 또는 SelectAtom 과 같은 메서드가 있어야합니다.




아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.