Exemplo n.º 1
0
 public static bool HaveDiff(CovidTgResume oldCovidTgResume, CovidTgResume newCovidTgResume)
 {
     return(!(
                oldCovidTgResume.ActiveCases == newCovidTgResume.ActiveCases &&
                oldCovidTgResume.Cured == newCovidTgResume.Cured &&
                oldCovidTgResume.Deaths == newCovidTgResume.Deaths &&
                oldCovidTgResume.Total == newCovidTgResume.Total
                ));
 }
Exemplo n.º 2
0
        public static async Task <List <CovidTgResume> > LoadInfosCovidAsync()
        {
            var config   = Configuration.Default.WithDefaultLoader();
            var context  = BrowsingContext.New(config);
            var document = await context.OpenAsync("http://covid19.gouv.tg/situation-au-togo/");

            var details = new List <CovidTgResume>();

            var sections = document.QuerySelectorAll(".ee-loop__item>article>div>div>div");

            foreach (var item in sections.Skip(1))
            {
                var itemDetails     = new CovidTgResume();
                var itemSections    = item.QuerySelectorAll("section");
                var itemHtmlDetails = itemSections.FirstOrDefault()?.QuerySelectorAll("h2");
                if (itemHtmlDetails != null)
                {
                    itemDetails.Date = $"{itemHtmlDetails[0].InnerHtml} à {itemHtmlDetails[1].InnerHtml}";

                    Stats itemStats = new Stats
                    {
                        ActiveCases = uint.Parse(itemHtmlDetails[3].InnerHtml.Replace("cas", "").Trim()),
                        Cured       = uint.Parse(itemHtmlDetails[4].InnerHtml.Replace("cas", "").Trim()),
                        Deaths      = uint.Parse(itemHtmlDetails[5].InnerHtml.Replace("cas", "").Trim())
                    };
                    itemDetails.Stat = itemStats;
                }

                foreach (var history in itemSections[1].QuerySelectorAll("p"))
                {
                    itemDetails.History += $"\n\n{history.InnerHtml}";
                }
                details.Add(itemDetails);
            }


            return(details);
        }