Unity & C# 解析HTML插件 - Winista.HtmlParser.dll 和 demo

1,基本使用方法(基于 Winista.HtmlParser.dll)
retStrings 是从网页获取的html数据
1, unity可以用unitywebrequest.get() 请求
2,控制台 C# 可以用httpwebrequest请求
不清楚可以下载查看 demo

       
        //  C# 解析 Html
        void Parserhtml(){
			 Parser parser = Parser.CreateParser(retStrings, "utf-8");   //创建一个parser
			        NodeFilter filter = new NodeClassFilter(typeof(Winista.Text.HtmlParser.Tags.Div));  //找到div标签  
			        NodeList nodes = parser.Parse(filter); //获取所有节点
			Debug.Log("节点" + nodes.Count);
			        for (int i = 0; i < nodes.Count; i++)
			        {
			          paserData(nodes[i]);
			        }
        }
       
    ITag getTag(INode node)
    {
        if (node == null)
            return null;
        return node is ITag ? node as ITag : null;
    }
    /// <summary>
    /// 解析数据
    /// </summary>
    /// <param name="node"></param>
    void paserData(INode node)
    {
        ITag tag = getTag(node);
        if (tag != null && !tag.IsEndTag())
        {
            //object oId = tag.GetAttribute("ID");
            //object oName = tag.GetAttribute("name");
            string oClass = tag.GetAttribute("class");
            string oText = tag.ToPlainTextString();
            //if (oClass == "Mean_symbols__1jA1O")   //"Mean_part__1Xi6p"
            //{        
           // }
        }
        //子节点
        if (node.Children != null && node.Children.Count > 0)
        {         
                paserData(node.FirstChild);           
        }
        //兄弟节点
        INode siblingNode = node.NextSibling;
        while (siblingNode != null)
        {
                paserData(siblingNode);
                siblingNode = siblingNode.NextSibling;
        }
    }

2,demo 和 dll 下载地址

下载链接 https://download.csdn.net/download/qq_39735878/20298510


版权声明:本文为qq_39735878原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。