HTML 민첩성 팩 - 클래스 또는 ID없이 div 가져 오기 (C #)

c# html-agility-pack parsing

문제

StackOverflow에 대한 몇 가지 해결책을 따르려고했지만 일부 도움이 필요합니다.
이것이 소스 HTML입니다.

<div class="myclass">
 <div style="font-size:2em;"> STRING_N1 </div>
 <div> STRING_N2 </div>
</div>

그리고 이것은 내 현재 코드입니다 :

        var doc = new HtmlAgilityPack.HtmlDocument();
        doc.LoadHtml(htmlcode);
        var res = doc.DocumentNode.SelectNodes("//div[@class='myclass']");
        foreach (var item in res)
        {
            var firstDiv = item.SelectSingleNode("div");
            var content1 = firstDiv.ChildNodes[0].InnerText.Trim();
            richTextBox1.AppendText(content1.ToString());
        }

지금까지 그렇게 좋았습니다. 문제없이 " STRING_N1 "을 추출 할 수 있었습니다 . 그러나, 나는 클래스 또는 ID없이 STRING_N2 를 추출하는 방법에 대해 알아낼 수 없습니다.
고맙습니다.

수락 된 답변

LINQ 를 사용하여 하위 항목 div 를 얻을 수 있습니다.

var divs = doc.DocumentNode.SelectNodes("//div[@class='myclass']") 
              .SelectMany(x => x.Descendants("div"));

var contents = divs.Select(x => x.InnerText.Trim());

richTextBox1.AppendText(string.Join(Environment.NewLine, contents);


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