Пример #1
0
        static Processo BuscarProcesso(string numeroProcesso)
        {
            Processo processo = new Processo()
            {
                NumeroProcesso = string.Empty,
                Classe         = string.Empty,
                Area           = string.Empty,
                Assunto        = string.Empty,
                Origem         = string.Empty,
                Distribuicao   = string.Empty,
                Relator        = string.Empty,
                Movimentacao   = new List <Movimentacao>()
            };

            try
            {
                WebRequest request = WebRequest.Create("https://localhost:44344/api/processo/filtro/" + numeroProcesso);
                request.Method = "GET";
                var response = request.GetResponse();

                if (((HttpWebResponse)response).StatusCode == HttpStatusCode.OK)
                {
                    using (Stream stream = response.GetResponseStream())
                    {
                        StreamReader streamReader = new StreamReader(stream);
                        string       content      = streamReader.ReadToEnd();
                        processo = JsonConvert.DeserializeObject <Processo>(content);
                    }
                    return(processo);
                }

                return(processo);
            }
            catch (Exception)
            {
                return(processo);
            }
        }
Пример #2
0
        static string scrapingProcessoTjba(string numeroProcesso)
        {
            var wc = new WebClient();

            wc.Headers.Add(HttpRequestHeader.AcceptCharset, "utf-8");
            wc.Encoding = Encoding.UTF8;

            try
            {
                Processo processo = BuscarProcesso(numeroProcesso);


                string pagina       = wc.DownloadString("http://esaj.tjba.jus.br/cpo/sg/search.do;jsessionid=82BCEACF52467D352D912CC6929C3AAA.cposg3?paginaConsulta=1&cbPesquisa=NUMPROC&tipoNuProcesso=SAJ&numeroDigitoAnoUnificado=&foroNumeroUnificado=&dePesquisaNuUnificado=&dePesquisa=" + numeroProcesso);
                var    htmlDocument = new HtmlDocument();
                htmlDocument.LoadHtml(pagina);
                HtmlNode[] nodesTabelaProcesso = htmlDocument.DocumentNode.SelectNodes("//table").ToArray();

                if (nodesTabelaProcesso != null)
                {
                    HtmlNode nodeNumeroProcesso = nodesTabelaProcesso[15].ChildNodes[1].ChildNodes[1].ChildNodes[5];
                    HtmlNode nodeClasse         = nodesTabelaProcesso[16].ChildNodes[1].ChildNodes[1].ChildNodes[1].ChildNodes[1];
                    HtmlNode nodeArea           = nodesTabelaProcesso[17];
                    HtmlNode nodeAssunto        = nodesTabelaProcesso[14].ChildNodes[7].ChildNodes[3];
                    HtmlNode nodeOrigem         = nodesTabelaProcesso[14].ChildNodes[9].ChildNodes[3];
                    HtmlNode nodeDistribuicao   = nodesTabelaProcesso[14].ChildNodes[13].ChildNodes[3];
                    HtmlNode nodeRelator        = nodesTabelaProcesso[14].ChildNodes[15].ChildNodes[3];

                    processo.NumeroProcesso = nodeNumeroProcesso.InnerText.Trim();
                    processo.Classe         = nodeClasse.InnerText.Trim();
                    string[] parts = nodeArea.InnerText.Split(":");
                    processo.Area         = parts[1].Trim();
                    processo.Assunto      = nodeAssunto.InnerText.Trim();
                    processo.Origem       = nodeOrigem.InnerText.Trim();
                    processo.Distribuicao = nodeDistribuicao.InnerText.Trim();
                    processo.Relator      = nodeRelator.InnerText.Trim();
                    processo.Movimentacao = new List <Movimentacao>();

                    foreach (HtmlNode nodeMovimentacao in nodesTabelaProcesso[32].ChildNodes)
                    {
                        if (nodeMovimentacao.Name == "tr")
                        {
                            Movimentacao movimentacao = new Movimentacao();
                            movimentacao.Data      = Convert.ToDateTime(nodeMovimentacao.ChildNodes[1].InnerText.Trim());
                            movimentacao.Descricao = nodeMovimentacao.ChildNodes[5].InnerText.Trim();
                            processo.Movimentacao.Add(movimentacao);
                        }
                    }
                }

                string msgResponse = "";

                if (processo.Id == 0)
                {
                    if (Gravar(JsonConvert.SerializeObject(processo)))
                    {
                        msgResponse = mensagemResponse(true);
                    }
                    else
                    {
                        msgResponse = mensagemResponse(false);
                    }
                }
                else
                {
                    if (Altera(processo.Id, JsonConvert.SerializeObject(processo)))
                    {
                        msgResponse = mensagemResponse(true);
                    }
                    else
                    {
                        msgResponse = mensagemResponse(false);
                    }
                }

                return(msgResponse);
            }
            catch (Exception ex)
            {
                return(ex.ToString());
            }
        }