Example #1
0
        public List <rssChannelItem> ListaNoticiasRssPorArquivo(string dia, string mes, string ano)
        {
            CrawlerXmlConvert cr = new CrawlerXmlConvert();

            List <rssChannelItem> lista = null;

            string caminho  = pathString;
            string fileName = caminho + mes + "-" + dia + "-" + ano + ".xml";
            string resultado;

            if (File.Exists(fileName))
            {
                resultado = File.ReadAllText(fileName);

                lista = cr.DeserializeObject <List <rssChannelItem> >(resultado);
                int cont = 0;
                foreach (var i in lista)
                {
                    lista[cont].pubDate = Convert.ToDateTime(i.pubDate).ToString("D",
                                                                                 CultureInfo.CreateSpecificCulture("pt-BR"));
                    cont++;
                }
            }

            return(lista);
        }
Example #2
0
        public List <rssChannelItem> ListaNoticiasRssPorHttp()
        {
            string _dia = AdicionarZero((DateTime.Now.Day).ToString());
            string _mes = AdicionarZero(DateTime.Now.Month.ToString());
            string _ano = DateTime.Now.Year.ToString();
            List <rssChannelItem> listaNoticias = ListaNoticiasRssPorArquivo(_dia, _mes, _ano);

            try
            {
                CrawlerXmlConvert cr = new CrawlerXmlConvert();
                var resultado        = cr.GetWebText("https://getpocket.com/users/*sso1574625684970c2f/feed/read");

                var dataR = cr.DeserializeObject <rss>(resultado);

                var listaNoticias2 = dataR.channel.item
                                     //.Where(l => DateTime.Parse(l.pubDate) >= DateTime.Now.AddDays(-1))
                                     .Select(cl => new rssChannelItem
                {
                    title    = cl.title,
                    category = cl.category,
                    guid     = cl.guid,
                    link     = cl.link,
                    pubDate  = Convert.ToDateTime(cl.pubDate).ToString("D",
                                                                       CultureInfo.CreateSpecificCulture("pt-BR"))
                }).ToList();

                if (listaNoticias?.Count == listaNoticias2?.Count)
                {
                    return(listaNoticias);
                }
                else
                {
                    listaNoticias = listaNoticias2;
                }

                var xml     = cr.SerializeObject(dataR.channel.item);
                var caminho = pathString + _mes + "-" + _dia + "-" + _ano + ".xml";
                System.IO.File.WriteAllText(caminho, xml);
            }
            catch (Exception ex)
            {
            }

            return(listaNoticias);
        }