Capturar dados de uma página WEB

2 respostas
G

Gostaria de uma susgestão/dica para a captura de alguns dados.
O objetivo é capturar os dados da seguinte página:
http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao.asp

Isto porque nem todos os estados disponibilizam a consulta de cadastro para a NFe.
Tive sucesso com os seguintes estados (BA,CE,GO,MG,MS,PE,PR,SC,SP).

Como exemplo, o web service de SC
https://svp-ws.sefazvirtual.rs.gov.br/ws/CadConsultaCadastro/CadConsultaCadastro2.asmx

A idéia é acessar a página da receita e capturar os dados cadastrais…
Pesquisando encontrei alguns exemplos, mas o site exige o parâmetro CNPJ e a digitação da “figura/imagem”

File file = new File("C:\\page.txt");
  URL url = new URL("http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao.asp");
  BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
  BufferedWriter out = new BufferedWriter(new FileWriter(file));
  String inputLine;
  while ((inputLine = in.readLine()) != null)
  {
     // Imprime página no console
     System.out.println(inputLine);
     // Grava pagina no arquivo
     out.write(inputLine);
     out.newLine();
  }
  in.close();
  out.flush();
  out.close();
Acessando pelo browse

String url = <a href="http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao.asp">http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao.asp</a>”;

URI uri = new URI(url);

Desktop.getDesktop().browse(uri);

2 Respostas

G

você já tem um algoritmo pra solucionar o captcha?
Se sim, você pode usar o HtmlPage, que abre uma conexão com a página, depois um HtmlForm pra pegar os campos de cnpj e captcha pelos ID’s, setar os valores, e por fim você pega do formulário o id do botão e da um .click(); que irá retornar a próxima página.

Só dar uma lida nas API’s, acho que vai precisar também do WebClient pra pegar a página pro HtmlPage…

G

Ainda não tenho ul algoritmo para capturar o captcha.
Mas vou aprofundar os estudos na sugestão apresentada.

Criado 22 de setembro de 2012
Ultima resposta 24 de set. de 2012
Respostas 2
Participantes 2