当前位置: 首页>>代码示例>>C#>>正文


C# RssLink.SetData方法代码示例

本文整理汇总了C#中RssLink.SetData方法的典型用法代码示例。如果您正苦于以下问题:C# RssLink.SetData方法的具体用法?C# RssLink.SetData怎么用?C# RssLink.SetData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在RssLink的用法示例。


在下文中一共展示了RssLink.SetData方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: GetHomeCategories

        private List<Category> GetHomeCategories(string data, Category parentCategory)
        {
            List<Category> cats = new List<Category>();
            Regex rgx = new Regex(@"nf\.constants\.page\.contextData =(.*); }\(netflix\)\);");
            Match m = rgx.Match(data);
            JObject json = null;
            if (m.Success)
            {
                string jsonData = m.Groups[1].Value;
                json = (JObject)JsonConvert.DeserializeObject(jsonData);
            }
            HtmlDocument doc = new HtmlDocument();
            doc.LoadHtml(data);
            try
            {
                HtmlNodeCollection mrows = doc.DocumentNode.SelectSingleNode("//div[@class = 'mrows']").SelectNodes("div[contains(@class, 'mrow')]");
                foreach (HtmlNode mrow in mrows.Where(mr => mr.GetAttributeValue("class", "") == "mrow" || mr.GetAttributeValue("class", "").Contains("evidence")))
                {
                    HtmlNode name = mrow.SelectSingleNode(".//h3");
                    HtmlNode imageNode = mrow.SelectSingleNode(".//img");
                    string img = "";
                    if (imageNode != null)
                    {
                        img = imageNode.GetAttributeValue("src", "");
                        if (string.IsNullOrEmpty(img))
                            img = imageNode.GetAttributeValue("hsrc", "");
                    }

                    RssLink cat = new RssLink()
                    {
                        Name = name.InnerText.Trim(),
                        HasSubCategories = !enableHomePlayNow,
                        Thumb = img,
                        ParentCategory = parentCategory,
                        
                    };
                    string html = mrow.OuterHtml;
                    if (json != null)
                    {
                        HtmlNode slider = mrow.SelectSingleNode(".//div[starts-with(@id, 'slider_')]");
                        if (slider != null)
                        {
                            string sliderId = slider.GetAttributeValue("id", "");
                            JToken initData = json["sliders"]["data"]["initData"].FirstOrDefault(n => n["domId"].Value<string>() == sliderId);
                            if (initData != null)
                            {
                                string remainderHTML = initData["remainderHTML"].Value<string>();
                                if (!string.IsNullOrEmpty(remainderHTML))
                                    html += remainderHTML;
                            }
                        }
                    }
                    cat.SetData(html);
                    cat.SetState(NetflixUtils.SinglePageCategoriesState);
                    cat.SetPlayNow(enableHomePlayNow);
                    cats.Add(cat);
                }
            }
            catch { }

            return cats;
        }
开发者ID:leesanghyun2,项目名称:mp-onlinevideos2,代码行数:62,代码来源:NetfilxWebUtil.cs


注:本文中的RssLink.SetData方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。