1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Salvando uma pagina da internet

Bom dia, preciso fazer um crawler que salve algumas paginas de noticias no disco. Por enquanto está assim:

//Baixa o conteudo html de uma pagina e salva no disco
    public static void leLink(String link, String local)
    {
        try
        {
            URL url = new URL(link);  
            BufferedReader conteudo = new BufferedReader(new InputStreamReader(url.openStream()));

            File arquivo;   
            String quebraLinha = "\n",teste;

            arquivo = new File(local);
            FileOutputStream fos = new FileOutputStream(arquivo);

            while((teste = conteudo.readLine()) != null)
            {
                fos.write(teste.getBytes());
                fos.write(quebraLinha.getBytes());
            }            
            fos.close();
        } 
        catch (MalformedURLException excecao) 
        {  
            excecao.printStackTrace();  
        } 
        catch (IOException excecao) 
        {  
            excecao.printStackTrace();  
        }

    }

Daí salvo o arquivo como .html. O problema é que esse arquivo baixado vem sem a parte do css, gostaria de saber como fazer para baixar este arquivo e ele ter a mesma estrutura daquele quando abro o link com o navegador e clico em salvar pagina.

Vou colocar aqui em baixo a diferença entre o arquivo baixado pelo meu programa e o baixado pelo browser(apenas o trecho que difere):

BROWSER

<!DOCTYPE html>
<!-- saved from url=(0157)http://noticias.uol.com.br/politica/ultimas-noticias/2013/01/14/presidente-do-tse-determina-apuracao-de-gastos-com-horas-extras-de-servidores-do-tribunal.htm -->
<html class=" &lt;!--[if lt IE 7 ]&gt;ie6&lt;![endif]--&gt;&lt;!--[if IE 7 ]&gt;ie7&lt;![endif]--&gt;&lt;!--[if IE 8 ]&gt;ie8&lt;![endif]--&gt;&lt;!--[if (gte IE 9)|!(IE)]&gt;&lt;![endif]--&gt; js flexbox canvas canvastext webgl no-touch geolocation postmessage websqldatabase indexeddb hashchange history draganddrop websockets rgba hsla multiplebgs backgroundsize borderimage borderradius boxshadow textshadow opacity cssanimations csscolumns cssgradients cssreflections csstransforms csstransforms3d csstransitions fontface generatedcontent video audio localstorage sessionstorage webworkers applicationcache svg inlinesvg smil svgclippaths placeholder datauri" lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><script src="./Presidente do TSE determina apuração de gastos com horas extras de servidores do tribunal - Notícias - Política_files/cb=gapi.loaded_1" async=""></script><script src="./Presidente do TSE determina apuração de gastos com horas extras de servidores do tribunal - Notícias - Política_files/cb=gapi.loaded_0" async=""></script><script type="text/javascript" async="" src="./Presidente do TSE determina apuração de gastos com horas extras de servidores do tribunal - Notícias - Política_files/plusone.js" gapi_processed="true"></script><script type="text/javascript" async="" src="./Presidente do TSE determina apuração de gastos com horas extras de servidores do tribunal - Notícias - Política_files/widgets.js"></script>


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <meta charset="utf-8"> 
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

MEU PROGRAMA:

<!DOCTYPE html>

<html class="no-js <!--[if lt IE 7 ]>ie6<![endif]--><!--[if IE 7 ]>ie7<![endif]--><!--[if IE 8 ]>ie8<![endif]--><!--[if (gte IE 9)|!(IE)]><![endif]-->" lang="en">

    <head>


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <meta charset="utf-8" />

Obrigado.

  • Se a resposta ajudou, marque a resposta como certa.

    marciobarroso   26 de ago de 2013
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java html css ou faça a sua própria pergunta.