노드 이름을 지정하지 않고 모든 노드를 반복하는 방법

c# html html-agility-pack

문제

모든 HTML 문서에서 모든 htmlDocument 노드의 모든 innerText를 가져 오려고합니다.

몇 가지 조사를 해보았지만 노드 이름을 지정하지 않고도 전체 문서에서 모든 상위 및 하위 노드를 통과 할 수있는 방법에 대한 해결책을 찾지 못했습니다.

내가 다른 HTML 문서로 작업 할 것이므로 노드 이름을 지정하는 것이이 시점에서 나를위한 선택 사항이 아니기 때문에이 작업을 수행하려고합니다.

인기 답변

나는 지금 그것을 알아 냈다. ... omg 그것은 내가이 기능을 사용하는 방법을 didnt하는 것에 따라 시작하는 것은 매우 간단했다.

HtmlDocument htmlDoc = new HtmlDocument();
htmlDoc.Load(MyIO.bingPathToAppDir("Test data/testHTML.html"));
HtmlNode j = htmlDoc.DocumentNode;
foreach (HtmlNode node in j.ChildNodes)
{
    checkNode(node);
}

static void checkNode(HtmlNode node)
{
    foreach (HtmlNode n in node.ChildNodes)
    {
        if (n.HasChildNodes)
        {
            checkNode(n);
        }
        else
        {
            Console.WriteLine(n.InnerText);
        }
    }
}


Related

아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow