Example #1
0
        public List <Domain.Model.Pacote.Pacote> Rastrear(string id)
        {
            List <Domain.Model.Pacote.Pacote> retorno = new List <Domain.Model.Pacote.Pacote>();
            var web      = new HtmlWeb();
            var doc      = web.Load($"https://www.linkcorreios.com.br/{id}");
            var tbLinhas = doc.DocumentNode.SelectNodes("//div[@id='conteudo']//table[@class='table table-bordered']//tbody//tr");

            Domain.Model.Pacote.Pacote pacote = new Domain.Model.Pacote.Pacote();

            for (int i = 0; i < tbLinhas?.Count; i++)
            {
                var col = tbLinhas[i].SelectNodes("td");
                if (tbLinhas.IndexOf(tbLinhas[i]) % 2 == 0)
                {
                    DateTime dt;
                    if (DateTime.TryParse(col[0].InnerText, out dt))
                    {
                        pacote.Data = dt;
                    }
                    pacote.Status = col[1]?.InnerText;
                }
                else
                {
                    pacote.Localidade         = new Localidade();
                    pacote.Localidade.Origem  = col[0].InnerText;
                    pacote.Localidade.Destino = col.Count > 1 ? col[1].InnerText : null;
                    retorno.Add(pacote);
                    pacote = new Domain.Model.Pacote.Pacote();
                }
            }
            return(retorno);
        }
Example #2
0
 public int?Update(Domain.Model.Pacote.Pacote entity)
 {
     throw new NotImplementedException();
 }