public async void GetLatest(int n = 0) { Latest.Clear(); var htmlDocument = new HtmlDocument(); htmlDocument.OptionFixNestedTags = true; htmlDocument.LoadHtml(await Utils.DownloadPageStringAsync("http://www.mangareader.net/")); var htmlDocument2 = new HtmlDocument(); var mangas = new List <Manga>(); foreach (HtmlNode cont in htmlDocument.DocumentNode.Descendants("tr").Where(x => x.Attributes.Contains("class") && x.Attributes["class"].Value == "c3")) { var link = cont.Descendants("a").First(); var m = new Manga { Name = link.FirstChild.InnerText, Url = "http://www.mangareader.net" + link.Attributes["href"].Value, Updated = cont.Descendants("td").ElementAt(2).InnerText }; mangas.Add(m); htmlDocument2.OptionFixNestedTags = true; htmlDocument2.LoadHtml(await Utils.DownloadPageStringAsync(m.Url)); m.Image = htmlDocument2.DocumentNode.Descendants("div").Where(x => x.Id == "mangaimg").First().Descendants().First().Attributes["src"].Value; var details = htmlDocument2.DocumentNode.Descendants("div") .Where(x => x.Id == "mangaproperties") .First() .Descendants("td") .Select(y => y.InnerText).ToList(); m.AlternateNames = details[3]; m.Year = details[5]; m.Status = details[7]; m.Author = details[9]; m.Artist = details[11]; /* * foreach (HtmlNode link2 in htmlDocument2.DocumentNode.Descendants("a").Where(x => x.Attributes.Contains("href") && x.ParentNode.OriginalName == "td")) * { * //Debug.WriteLine("Manga=" + m.Name + " Inner = " + link.InnerText); * * m.Chapters.Add(new Chapter { Name = link2.InnerText, Url = link2.Attributes["href"].Value }); * }*/ if (mangas.Count == 5) { foreach (Manga mx in mangas) { Latest.Add(mx); } mangas.Clear(); DataChanged(this, null); return; } //if (Latest.Count > 4) return; Latest.Add(m); } //foreach (Manga mx in mangas) Latest.Add(mx); if (DataChanged != null) { DataChanged(this, null); } }