从HTML文档读取以放入列表

时间:2018-07-29 22:51:37

标签: c# html winforms parsing html-agility-pack

因此,在我的程序中,将有Garry的mod API列表,您可以将其拖放到文本文件中,它将自动生成该函数声明。

所以我试图获取整个API的方法是使用Garry的mod文档(http://wiki.garrysmod.com/page/Main_Page),因此我的代码能够读取我试图访问的无序列表元素并放入清单。到目前为止,这是我的代码,如果有人可以帮助我找出一种方法,将无序列表放入由它们具有的不同标头分隔的列表中(例如,Hooks-> Effect-> EndTouch),则该字典中的第二个字符串将是访问类型,它是链接文本(a)的类类型,被定义为客户端,共享或服务器。谢谢大家,如果我自己取得进展,我会及时更新。

这是我的代码:(对于此方法,截至目前,我使用HtmlAgilityPack软件包)

using System.Collections.Generic;
using System.Windows.Forms;
using HtmlAgilityPack;

namespace Gsdk
{
    static class ReadFromAPI
    {
        static List<List<Dictionary<string,string>>> API = new 
        List<List<Dictionary<string, string>>>();

        public static void Page_Load()
        {
            var html = @"http://wiki.garrysmod.com/page/Main_Page";

            HtmlWeb web = new HtmlWeb();

            var htmlDoc = web.Load(html);

            HtmlNode nodes = htmlDoc.DocumentNode.SelectSingleNode("//* 
              [@id="globalWrapper"]/span/navigation/pagelist/ul");

        //DONT MIND THIS PART ITS JUST FOR MY DEBUGGING ATTEMPTS

        //foreach(var node in nodes)
        //{
            MessageBox.Show(nodes.InnerHtml);
        //}

        }
    }
}

更新

我发现了问题所在。无论出于何种原因,HtmlAgilityPack都无法读取其中的内容,我仍然无法弄清楚为什么,但是对于可能正在研究此问题的任何人来说,这可能有所帮助。我不知道我的代码或HtmlAgilityPack本身是否有问题,但是再次提供帮助将不胜感激。谢谢!

0 个答案:

没有答案