Esempio n. 1
0
        public static IEnumerable <NewsItem> GetTodayNews()
        {
            var lastTime = DateTime.Now;
            var today    = DateTime.Today.Day;
            var parser   = new NewsParser();
            var newsHtml = new HashSet <NewsItem>();

            do
            {
                var href = GenerateLink(lastTime);
                var data = GetPageByUrl(href);
                var page = parser.ParseNewsList(data);
                foreach (var singlePreview in page)
                {
                    var link = parser.ParseHrefOfNews(singlePreview);
                    lastTime = parser.ParseTimeOfNews(singlePreview);
                    var htmlPage = GetPageByUrl(link);
                    var item     = new NewsItem(link, lastTime);
                    item.DownloadContent(parser, htmlPage);
                    if (!newsHtml.Contains(item))
                    {
                        newsHtml.Add(item);
                    }
                }
            }while (lastTime.Day == today);

            return(newsHtml.Where(x => x.dateTime.Day == today));
        }