Exemple #1
0
        public void AnimePicturesPage_ParsedCorrectly()
        {
            string           testLink = "https://myanimelist.net/anime/5114/Fullmetal_Alchemist__Brotherhood/pics";
            PicturesPageData page     = MALParser.AnimePage.Pictures.Parse(testLink);

            Assert.AreEqual(page.Pictures.Count, 8);
            page.Pictures.ForEach(x =>
            {
                Assert.IsNotNull(x.Path);
            });
        }
        public PicturesPageData GetPicturesPage()
        {
            if (m_pictures != null)
            {
                return(m_pictures);
            }

            if (m_header.Link_Pictures == null)
            {
                throw new Exception("There's no pictures page for this anime.");
            }

            m_pictures = Pictures.Parse(m_header.Link_Pictures.Path);
            return(m_pictures);
        }
        public async Task <PicturesPageData> GetPicturesPageAsync()
        {
            if (m_pictures != null)
            {
                return(m_pictures);
            }

            if (m_header.Link_Pictures == null)
            {
                throw new Exception("There's no pictures page for this anime.");
            }

            m_pictures = await Pictures.ParseAsync(m_header.Link_Pictures.Path);

            return(m_pictures);
        }
Exemple #4
0
        private static PicturesPageData AnalyzeDocument(string HTMLCode)
        {
            HtmlDocument doc = new HtmlDocument();

            doc.LoadHtml(HTMLCode);

            PicturesPageData page = new PicturesPageData(Header.AnalyzeHeader(HTMLCode));

            try
            {
                var picsNode = doc.DocumentNode.Descendants("div").Where(x => x.GetAttributeValue("class", "") == "picSurround");
                foreach (var node in picsNode)
                {
                    page.Pictures.Add(new LinkInfo(node.Descendants("a").First().GetAttributeValue("href", "")));
                }
            } catch (Exception ex)
            {
                Console.WriteLine(ex.Message + ex.StackTrace);
            }

            return(page);
        }