使用HtmlAgilityPack无法显示节点的内容

问题描述 投票:0回答:1

我在此网址http://patorjk.com/software/taag/#p=display&f=Graffiti&t=Type%20Something%20上进行数据抓取时遇到麻烦。

问题是:我编写了一个代码,该代码应该获取某个节点的内容并将其显示在控制台上。但是,包含节点和特定节点本身的内容似乎不可访问,但是我知道它们的存在是因为我已经在代码中创建了一个条件,以便让我知道是否找到具有特定主体的节点并且确实可以找到它,但是由于某些原因没有显示它:

private static void getTextArt(string font, string word)
        {
            HtmlWeb web = new HtmlWeb();
            //cureHtml method is just meant to return the http address
            HtmlDocument htmlDoc = web.Load(cureHtml(font, word));
            if(web.Load(cureHtml(font, word)) != null)
                Console.WriteLine("Connection Established");
            else
                Console.WriteLine("Connection Failed!");

            var nodes = htmlDoc.DocumentNode.SelectSingleNode(nodeXpath).ChildNodes;

            foreach(HtmlNode node in nodes)
            {
                if(node != null)
                    Console.WriteLine("Node Found.");
                else
                    Console.WriteLine("Node not found!");

                Console.WriteLine(node.OuterHtml);
            }
        }

        private const string nodeXpath = "//div[@id='maincontent']";
}

网站显示的HTML看起来像这样:

The Html code within the website. Arrows point at the node I'm trying to reach and the content within it I'm trying to display on the console

[当我在控制台上运行代码以检查节点及其内容并尝试显示Xpath的OuterHtml字符串时,这是控制台将其显示给我的方式:

Console Window Display

我希望你们中的一些人能够向我解释为什么会这样。我已经尝试了两天在google上进行的各种搜索,试图找出没有用的问题。预先谢谢大家。

c# html dom web-scraping html-agility-pack
1个回答
0
投票

您想要的内容是动态加载的。

© www.soinside.com 2019 - 2024. All rights reserved.