private void ParseMainHTML(string text) { text = RealmsDataUtils.CleanUpHTML(text); text = RealmsDataUtils.CleanUpPlaylistURL(text); XDocument xdoc = XDocument.Parse(text); var nodes = xdoc .Root .Descendants() .Where(node => node.Attribute("class") != null) ; nodes .Where(node => node.Attribute("class").Value == RealmsHTMLDataSource.YOUTUBE_PLAYLIST_CLASS) .ToList() .ForEach(node => ParsePlaylist(node)); OnContentItemLoadingComplete(); }
private void ParseMainHTML(string text) { #if UNITY_EDITOR //System.IO.File.Create(@"d:/org.xml").Dispose(); //System.IO.File.WriteAllText(@"d:/org.xml", text); //System.IO.File.Create(@"d:/blog.xml").Dispose(); //System.IO.File.Create(@"d:/blog_org.xml").Dispose(); #endif text = RealmsDataUtils.CleanUpHTML(text); text = RealmsDataUtils.CleanUpPlaylistURL(text); #if UNITY_EDITOR //System.IO.File.Create(@"d:/clean.xml").Dispose(); //System.IO.File.WriteAllText(@"d:/clean.xml", text); #endif XDocument xdoc = XDocument.Parse(text); var nodes = xdoc .Root .Descendants() .Where(node => node.Attribute("class") != null) ; nodes .Where(node => node.Attribute("class").Value.Contains(BLOG_POST_CLASS_PREFIX)) .ToList() .ForEach(node => LoadBlogPostContent(node)) ; nodes .Where(node => node.Attribute("class").Value == YOUTUBE_PLAYLIST_CLASS) .ToList() .ForEach(node => ParsePlaylist(node)); // nodes // .Where (node => node.Attribute ("class").Value.Contains(IMAGE_CLASS_PREFIX)) // .ToList () // .ForEach (node => ParseImage(node)) // ; }
private void ParseBlogPostHTML(string text) { #if UNITY_EDITOR //System.IO.File.WriteAllText(@"d:/blog_org.xml", text); #endif text = RealmsDataUtils.CleanUpHTML(text); text = RealmsDataUtils.CleaupContent(text); #if UNITY_EDITOR //System.IO.File.WriteAllText(@"d:/blog.xml", text); #endif XDocument xdoc = XDocument.Parse(text); xdoc .Descendants() .Where(node => node.Attribute("class") != null) .Where(node => node.Attribute("class").Value.Contains(BLOG_POST_CLASS_PREFIX)) .ToList() .ForEach(node => ParseBlogPost(node)); }
private void ParseItem(XElement item) { RealmsContentProvider.ImageData data = new RealmsContentProvider.ImageData(); data.title = item .Descendants() .Where(node => node.Name == "title") .First() .Value ; XElement content = item .Descendants() .Where(node => node.Name.ToString().Contains("content")) .First(); string srtString = "src=\""; int srcIndexFrom = content.Value.IndexOf(srtString) + srtString.Length; int srcIndexTo = content.Value.IndexOf("\" ", srcIndexFrom); data.url = content.Value.Substring(srcIndexFrom, srcIndexTo - srcIndexFrom); int descriptionIndexFrom = content.Value.IndexOf("/>", srcIndexTo); string descriptionText = content .Value .Substring(descriptionIndexFrom + 2) .Replace("<p>", string.Empty) .Replace("</p>", string.Empty) .Replace("<em>", string.Empty) .Replace("</em>", string.Empty) ; data.description = RealmsDataUtils.ReplaceASCIICodesWithUTF(descriptionText); gallery.images.Add(data); }