Galera, preciso fazer uma parte de uma aplicação em Java para desktop que busca o cep do site dos correios, mas sem utilizar aquele serviço de WebService. O programa deve receber um cep e verificar no site dos correios através da url e retornar o código html da página gerada com os campos de endereço para através do JSoup retirar os textos necessários (logradouro, cidade, estado etc…) e mostrar ao usuário. Pra vocês entenderem melhor, tem que fazer exatamente o que está neste link ( http://www.pinceladasdaweb.com.br/blog/2012/01/31/webservice-consulta-de-cep-diretamente-ao-site-dos-correios/#comment-554570 ) só que em Java… E como eu entendo pouco de php não consegui entender o processo… Obrigado desde já.
Olá,
Segue um exemplo utilizando o site dos correios (http://m.correios.com.br/movel/buscaCepConfirma.do).
Para aprender sobre a API Jsoup tem o site http://jsoup.org/ ou http://goole.com. Vou te ajudar, só dessa vez.
Com esse exemplo você pode adaptar ao seu código. Mais mastigado que isso, só isso .
[code]import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
public class BuscarCep {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
Map<String, String> query = new HashMap<String, String>();
query.put("cepEntrada", "80520120");
query.put("tipoCep", "");
query.put("cepTemp", "");
query.put("metodo", "buscarCep");
Document doc = Jsoup.connect("http://m.correios.com.br/movel/buscaCepConfirma.do")
.data(query)
.post();
Elements elemetos = doc.select(".respostadestaque");
if (elemetos.size() == 4) {
System.out.println("Logradouro: " + elemetos.get(0).text());
System.out.println("Bairro: " + elemetos.get(1).text());
System.out.println("Localidade/UF: " + elemetos.get(2).text());
System.out.println("CEP: " + elemetos.get(3).text());
} else {
System.out.println("Dados não encontrado");
}
}
}
[/code]