public void gravarReclamacoes(Expressao expressao, List <string> links, string http, string titulo, string texto, string data) { string doc; string exp; string reclamacao; int i = 0; foreach (string link in links) { try { StreamWriter writer = new StreamWriter(@"C:\\Users\\Anderson\\Documents\\Docs FCA\\" + i++ + ".txt", true, System.Text.Encoding.GetEncoding(1252)); MineracaoReclamacoes mineracaoReclamacoes = new MineracaoReclamacoes(); Colecao colecao = new Colecao(); DownloadHTML dh = new DownloadHTML(); string linkCompleto = "https://www.proteste.org.br" + link; dh.baixarHTML(linkCompleto); doc = dh.getHttp(); exp = expressao.getExpressaoTitulo(); mineracaoReclamacoes = colecao.listarTitulos(mineracaoReclamacoes, exp, linkCompleto, doc); titulo = mineracaoReclamacoes.getTitulo(); exp = expressao.getExpressaoTexto(); mineracaoReclamacoes = colecao.listarTexto(mineracaoReclamacoes, exp, http, doc); texto = mineracaoReclamacoes.getTexto(); exp = expressao.getExpressaoData(); mineracaoReclamacoes = colecao.listarDatas(mineracaoReclamacoes, exp, http, doc); data = mineracaoReclamacoes.getData(); //.Substring(0, 10) + " " + DateTime.Now.Hour + ":" + DateTime.Now.Minute + ":" + DateTime.Now.Second + ".000"; writer.WriteLine(titulo); writer.WriteLine(); writer.WriteLine(data); writer.WriteLine(); writer.WriteLine(texto); writer.WriteLine(); writer.Close(); reclamacao = link; } catch { } } }
static void Main(string[] args) { DownloadHTML dh = new DownloadHTML(); Expressao expressao = new Expressao(); Colecao colecao = new Colecao(); MineracaoReclamacoes mineracaoReclamacoes = new MineracaoReclamacoes(); ListaLinks listaLinks = new ListaLinks(); List <string> links = new List <string>(); string informacoesReclamacao; string doc; string http; string titulo; string texto; string data; http = "https://www.proteste.org.br/reclame/lista-de-reclamacoes-publicas?company=300001006"; doc = dh.baixarHTML(http); expressao.setExpressaoTitulo("<h1 class=\"main__title\">(.+?)</h1>"); titulo = expressao.getExpressaoTitulo(); expressao.setExpressaoData("<time class(.+?)</time>"); data = expressao.getExpressaoData(); expressao.setExpressaoTexto("<dl class=\"data-summary__section\">(.+?)</dd>"); texto = expressao.getExpressaoData(); expressao.setExpressaoLink("\"/reclame/lista-de-reclamacoes-publicas/+(.+?)\""); informacoesReclamacao = expressao.getExpressaoLink(); mineracaoReclamacoes = colecao.listarLinks(mineracaoReclamacoes, informacoesReclamacao, http, doc); links = listaLinks.listar(mineracaoReclamacoes); Gravacao gravacao = new Gravacao(); gravacao.gravarReclamacoes(expressao, links, http, titulo, texto, data); }