Capturar codigo html de uma página protegida

10 respostas
B

pessoal, alguem teria alguma solução para capturar os textos dessa pagina aqui?

não preciso nem dos tags nem nada… soh o texto estaria bom

10 Respostas

K

Tenta clicar com os dois botões do mouse ao mesmo tempo na página

B

Deixa eu tentar explicar melhor, eu fiz um programinha que conecta em u endereco qualquer que eu passo de parametro e ele captura a pagina html desse endereco e faz alguns parsers na pagina pra me retornar oq u quero ( no momento estou extraindo os links que a pagina passada como parametro tem ).

Só que nesse endereco eu não consigo fazer com que o programa capture o arquivo HTML da pagina que estou vendo, independe de onde eu esteja navegando na página, o HTML que meu programa java pega é sempre o mesmo. O mesmo acontece se eu vou no browser e peço para exibir o codigo fonte da pagina… independente da página que estou navegando no momento, o codigo fonte eh sempre o mesmo

Aqui está o codigo fonte da página:

<html>
  <head>
    <title>Jornal do Commercio - www.jornaldocommercio.com.br</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<META NAME="Description" CONTENT="Mauricio Dinepi, Affonso Nunes, Alberto Salino, Ana Carolina  Diniz, Ana Paula Cardoso, Andréa Cordioli, Antônio Calegari, Antônio Carlos Cunha......." />
    <META NAME="Keywords" CONTENT="Mauricio Dinepi, Affonso Nunes, Alberto Salino, Ana Carolina  Diniz, Ana Paula Cardoso, Andréa Cordioli, Antônio Calegari, Antônio Carlos Cunha........" />
    <META NAME="Publisher" CONTENT="Jornal do Commercio" />
    <META NAME="Copyright" CONTENT="Jornal do Commercio" />
    <META NAME="Author" CONTENT="Jornal do Commercio" />
    <META NAME="Language" CONTENT="Portugues" />
    <META NAME="Robots" CONTENT="All" />

    <meta name="revisit-after" content="10 days">
    <link rel="stylesheet" href="./estilos/estilo.css" type="text/css">
    <script language="JavaScript" type="text/javascript" src="./scripts/funcoes.js"></script>
    <script language="JavaScript" type="text/javascript" src="http://www.jornaldocommercio.com.br/komanche2.1/jscript/dhtmllib2.js"></script>
    <script language="JavaScript" type="text/javascript" src="http://www.jornaldocommercio.com.br/komanche2.1/jscript/serializer.js"></script>
    <script language="JavaScript" type="text/javascript" src="http://www.jornaldocommercio.com.br/komanche2.1/jscript/fsender.js"></script>
    <script language="JavaScript" type="text/javascript" src="http://www.jornaldocommercio.com.br/komanche2.1/jscript/g_acalls.js"></script>
    <script language="JavaScript" type="text/javascript" src="http://www.jornaldocommercio.com.br/komanche2.1/jscript/g_bcalls.js"></script>
    <script language="JavaScript" type="text/javascript" src="http://www.jornaldocommercio.com.br/komanche2.1/jscript/gateway.js"></script>
    <script language="JavaScript" type="text/javascript" src="http://www.jornaldocommercio.com.br/komanche2.1/jscript/editor.js"></script>
    <script language="JavaScript" type="text/javascript" src="http://www.jornaldocommercio.com.br/komanche2.1/jscript/funcoes.js"></script>
    <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script>
    <script>
    var _uacct = "UA-1290310-1";
    var SERVER = "http://www.jornaldocommercio.com.br/komanche2.1/gateway/server.php?id=jcomm";
    var COOKIE = "ck_jcomm2";
    function initSite(){
        call({publisher: 'getPage', page: 'home', box: '_body' , no_send_browser: '0'}, 'putHTML');
        return false;
    }
    function getPage(pg) {
        call({publisher: 'getPage', page: pg, box: '_body'}, 'putHTML'); 
        return false;  
    }
    </script>
  </head>

  <body onLoad="initGateway();initSite();" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
  <div id="_body">
  </div>
  <!--<input type="button" value="teste" onclick="call({publisher: 'getPage', page: 'home', box: '_body'}, 'putHTML');">-->

<a href="./?page=edicoes_google" style="color:#ffffff;font-size:1">ultimas edições</a>  

  </body>
</html>
B

Resumindo mais ainda… só quero pegar o codigo HTML puro dessa página, mas o browser > exibir codigo fonte e meu programa em java só conseguem capturar esse código que postei aqui…

Se o browser exibe o texto, em algum HTML ele está … só não sei onde q tá o maldito texto :frowning:

HELP!

T

Se a página puder ser carregada pelo Firefox, use a “Firefox extension” “Web Developer”.
(Você precisa ir ao site do Firefox para ver como é que se instala o “Web Developer” no seu Firefox.)
Então chame no menu Tools, Web Developer, View Source, View Generated Source, e veja o que ocorre.

A

Faz o download destes arquivos

http://www.jornaldocommercio.com.br/scripts/funcoes.js
http://www.jornaldocommercio.com.br/komanche2.1/jscript/dhtmllib2.js
http://www.jornaldocommercio.com.br/komanche2.1/jscript/serializer.js
http://www.jornaldocommercio.com.br/komanche2.1/jscript/fsender.js
http://www.jornaldocommercio.com.br/komanche2.1/jscript/g_acalls.js
http://www.jornaldocommercio.com.br/komanche2.1/jscript/g_bcalls.js
http://www.jornaldocommercio.com.br/komanche2.1/jscript/gateway.js
http://www.jornaldocommercio.com.br/komanche2.1/jscript/editor.js
http://www.jornaldocommercio.com.br/komanche2.1/jscript/funcoes.js
http://www.google-analytics.com/urchin.js

e procura por “getPage”

B

thingol:
Se a página puder ser carregada pelo Firefox, use a “Firefox extension” “Web Developer”.
(Você precisa ir ao site do Firefox para ver como é que se instala o “Web Developer” no seu Firefox.)
Então chame no menu Tools, Web Developer, View Source, View Generated Source, e veja o que ocorre.

Fala thingol,

então… isso que o mozilla fez eh exatamente o HTML que quero, só não sei como chegar nesse “generated source”…

Adriano,
procurei pela funcao getPage nesses arquivos mas não encontrei nada… a unica coisa que encontrei foi um if comparando essa função com alguma outra coisa la…

B

então, não existe um método em java pra eu passar um HTMLDocument ou uma URL como parâmetro e ele me retornasse o “Generated Source code” dessa página?

isso mataria o meu problema !

alguem saberia algo sobre isso?

G

Nesse caso você não vai conseguir fazer dessa forma…

Qualquer chamada HTTP que voce fizer retorna o corpo da página, que é isso que estamos vendo. O Browser é quem executa os javascripts que retornam o conteúdo dinamico. Ou seja, o browser recebe exatamente isso mas a diferença é que ele sabe rodar javascript e buscar o resto :), o que não é nada fácil para nós simples mortais.

Como disse um colega acima, a melhor coisa é analisar os scripts e tentar entender como ele busca o resto do conteudo. (ou usar a extensão do firefox, que eu nao conheço mas acredito que faça o que vc procura).

Mas o importante é: de um jeito ou de outro, o trabalho é mais ou menos manual.

B

entendo… bom, nao sei se estou viajando mas acredito que o script que busca a página que vai ser exibida deve ser esse entao

function getPage(pg) {
         call({publisher: 'getPage', page: pg, box: '_body'}, 'putHTML'); 
         return false;

percebi essa função aqui tmbm

function initSite(){
         call({publisher: 'getPage', page: 'home', box: '_body' , no_send_browser: '0'}, 'putHTML');
         return false;
     }

que acredito que seja chamada quando a página é carregada por essa linha

<body onLoad="initGateway();initSite();" .......

pelo que percebi, a unica diferenca entre esses 2 métodos é que o initSite() já tem a pagina setada ( ‘getPage’, page: ‘home’ ) enquanto a função getPage(pg) recebe ela de parametro.

o link que eu queria pegar o html puro seria chamado por essa linha:

<a href="./?page=noticias&error=cadastro&redir_denied=cadastro&jnoticia_key=118311&jnot_categoria=67&jnot_edicao=1256&jnot_force_edicao=jnot_force_edicao" onclick="call({publisher: 'getPage', page: 'noticias', redir_denied: 'cadastro', jnoticia_key: '', jnot_key: '118311', jnot_categoria: '67', jnot_edicao: '1256'}, 'putHTML', '');return false;">

minha pergunta, eu tenho como executar esse javascript que busca o conteudo da página utilizando a barra de endereço do browser mesmo?

outra, alguem entendeu alguma coisa desses scripts que colei aqui?

e por ultimo, esse “Web Developer”/“View Generated Source” do Firefox não teria alguma coisa parecida com um debugger pra eu entender melhor como que esse site monta o HTML final?

ah, e obrigado mesmo a todos pela ajuda que estão dando aqui :smiley:

[]'s

B

cheguei em casa e fui dar uma pesquisada com mais calma, nesse link aqui parece que está a solução do problema!

http://java.sun.com/developer/technicalArticles/J2SE/Desktop/scripting/

vou dar umas testada amanha, já que tenho os scripts, talvez não seja tão complicado como eu imagina…

E esse Web Developer do Firefox que o Thingol falou eh mto foda! fiquei debugando o Javascript com ele e ta comecando a ficar mais claro oq rola na página hehe

Pra quem usa mto javascript achei indispensavel esse plugin! Se quiser saber mais

http://www.svendtofte.com/code/learning_venkman/index.php

Criado 17 de maio de 2007
Ultima resposta 17 de mai. de 2007
Respostas 10
Participantes 5