Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Teixeira Junior

Pegar conteudo de div via ajax

Recommended Posts

bom estou tentando fazer um script que pegue uma imagem

que existe dentro de uma div de outro site

 

div:

<div style="width: 300px; height: 57px;" id="recaptcha_image" class="register-label">conteudo aqui</div>

já tentei por php preg_match_all e nao consegui e não sei como fazer em javascript

me ajudem ai please !

desde já agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rapaz, você pode fazer isso da seguinte maneira:

<iframe src="http://pagina.com.br" id="xupinhaFrame" style="display: none"></iframe>

E depois em JavaScript

$("iframe#xupinhaFrame").contents().find("div#recaptcha_image").text();

ou, caso queira em HTML e não texto

$("iframe#xupinhaFrame").contents().find("div#recaptcha_image").html();

Só que, se o outro site não for de autoria ou autorizado você a fazer isso, isso é coisa feia em :p

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Seria isso:

$.ajax({type: 'jsonp'}, 'http://google.com').done(function(html) {
    $(html).find('div img');
})

Faça da maneira que o nosso amigo ExtremesX falou pois é mais bonito que a minha :P

 

Só uma pequena opinião: trocar de 'jsonp' para 'html'.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rapaz, você pode fazer isso da seguinte maneira:

<iframe src="http://pagina.com.br" id="xupinhaFrame" style="display: none"></iframe>

E depois em JavaScript

$("iframe#xupinhaFrame").contents().find("div#recaptcha_image").text();

ou, caso queira em HTML e não texto

$("iframe#xupinhaFrame").contents().find("div#recaptcha_image").html();

Só que, se o outro site não for de autoria ou autorizado você a fazer isso, isso é coisa feia em :P

 

Abraços!

Não funcionou amigo !

o dominio nao permite alocação de iframe!

 

 

Seria isso:

$.ajax({type: 'jsonp'}, 'url').done(function(html) {
    var armazena = $(html).find('#recaptcha_image').text();
    alert(armazena);

})

tentei dessa forma porem no alerta retorna um valor vazio

aparece no console " " mas eu sei que essa div nao esta vazia

 

ai fui pela ideia de vcs e tentei assim:

 

$.ajax({
type: 'GET',
url: 'url',
success: function(html){
alert(html);
var armazena = $(html).find('#recaptcha_image').text();
	alert(armazena);
}
})

tbm no alerta aparece em branco não pega nada!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz assim e veja o resultado (se está chegando o HTML da pagina corretamente):

console.log(html);

Se exibir algo, tente:

console.log($(html).find('img'));
E veja se sua imagem aparece na lista exibida

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Faz assim e veja o resultado (se está chegando o HTML da pagina corretamente):

console.log(html);

Se exibir algo, tente:

console.log($(html).find('img'));
E veja se sua imagem aparece na lista exibida

 

Ele retorna o codigo da página , porem é como se a div estivesse vazia porem nao está!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rapaz, coloque este código em seu HTML

<iframe src="http://pagina.com.br" id="xupinhaFrame" style="display: none"></iframe>

Edite o local pagina.com.br para a página desejada.

 

Em seguida, em seu arquivo js ou tag script (logicamente, apos o document.ready ou window.load)

$("#xupinhaFrame").load(function(){
    
    console.log($(this).contents().find("body"));
});

e veja o que aparecerá no console.

 

Lembre-se que existem sites que bloqueiam Cross Request.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigos, tenho o resultado da leitura de um qrcod dentro de uma div,  assim  <div id="result"></div>.  preciso pegar esse resultado e colocar em uma varia php para gravar no banco de dados.  alguem sabe como fazer ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.