Lendo uma página WEB em Java Android programaticamente

Neste post irei demonstrar como ler (carregar) uma página da web programaticamente em Java Android. Este recurso é muito interessante, visto que, podemos ler páginas e conteúdos da web dentro de uma programa Java e manipular o conteúdo. Uma aplicação muito útil para este post é a criação de motores de busca na internet. Você passa um link inicial e o programa lê a página associada ao link e procura outros links dentro desta página, montando uma árvore de links e um motor de busca recursivo.

Para realizar esta operação você deve utilizar as classes URL, URLConnection e InputStream. No meu exemplo abaixo eu criei um Watchdog (programa que monitora programas) para verificar de tempos em tempos se o site da Framework está no ar. O que eu faço é basicamente carregar a página principal e procurar a frase “Nossos Cursos” e tratar as exceções oriundas de um acesso mal sucedido.

    public static void watchDog() {

        try {
        
            URL url = new URL(“http://www.frameworksystem.com”);
            URLConnection conn = url.openConnection();
            InputStream inputStream = conn.getInputStream();

            final int bufferSize = 1024;
            final char[] buffer = new char[bufferSize];
            final StringBuilder out = new StringBuilder();
            Reader in = new InputStreamReader(inputStream, “UTF-8”);
            for (; ; ) {
                int rsz = in.read(buffer, 0, buffer.length);
                if (rsz < 0)
                    break;
                out.append(buffer, 0, rsz);
            }
            
            System.out.println(out.toString());
            
            if (out.toString().contains(“Nossos Cursos”)) {
                System.out.println(“A PAGINA ESTA NO AR”);
            } else {
                System.out.println(“A PAGINA NAO ESTA NO AR”);
            }
        
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println(“ERRO AO OBTER A PAGINA”);
        }

    }

Este programa então é colocado em um CRON do Linux e temos um WatchDog simples e eficaz para o site da Framework.

Add Comment

Your email address will not be published. Required fields are marked *

Phone: (31) 3646-1612
Fax: (31) 3646-1614
Loja 01, Lourdes, Belo Horizonte/MG
Rua Rio de Janeiro, 1278