Verificando se a pagina existe

6 respostas
denisspitfire

Pessoal, estou desenvolvendo um software para buscar imagens em um determinado site.

Neste caso, o link é
http://www.exemplo.com.br/browse.phtml?f=download&id=00000001
http://www.exemplo.com.br/browse.phtml?f=download&id=00000002

http://www.exemplo.com.br/browse.phtml?f=download&id=99999999

cada pagina dessa, ou volta um not found, ou a imagem.

Caso não volte not found, quero salva-la em um diretorio. Senão, próxima pagina.

da pra fazer isso desktop?

6 Respostas

denisspitfire

achei um software chamado, xenu. Porém ele nao resolve, pois descobri que… se o link para a imagem não existe, aparece uma pagina. logo, nao da 404… e ele acha que esta tudo certo.
como identificar então?

wagnerfrancisco

Vc pode estabelecer uma conexão com HttpUrlConnection e ver o status do retorno.

denisspitfire

preciso saber do conteudo…
nessa httpurlconnection da pra ver se existe um conteudo que contenha uma imagem?

denisspitfire

aff mesmo assim… mesmo que ele veja o conteudo que retornou… la no site tem um tratamento para 404, e tem um banner…

denisspitfire

ja sei… oque voltar, da pra eu salvar todas as imagens da pagina???
porque quando não conter a pagina, vai voltar um banner e mais algumas coisinhas tipo, botao etc etc.

dai como vai salvar na mesma pasta, posso colocar para dar um replace no arquivo.

tem como salvar todo o conteudo de uma pagina?

denisspitfire

pesquisando a respeito achei um tutorial com este codigo.

package br.mb.tutorialCapturaPaginaWeb;

import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;

public class LoadPage {
    public void getPage(URL url, File file) throws IOException {
        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();
    }

    public static void main(String[] args) {
        URL url = null;
        File file = new File("C:\\TutorialArquivos\\page.html");
        try {
            url = new URL("http://ondetrabalhar.com/vagas/1399/arquiteto-java");
            new LoadPage().getPage(url, file);
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

mas este código só captura o html, eu quero a imagem que trará dentro do html

Criado 27 de agosto de 2012
Ultima resposta 27 de ago. de 2012
Respostas 6
Participantes 2