Ir para conteúdo

POWERED BY:

Arquivado

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

Ricardo II

[Resolvido] Pegar parte conteúdo de um site

Recommended Posts

Olá pessoal estou pegando o conteúdo de um site com o curl, porém so quero uma parte do conteudo e não o site todo, voc~e sabem s eé possivel, o conteudo que quero pegar esta dentro de uma div.

 

Abraço a todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal estou pegando o conteúdo de um site com o curl, porém so quero uma parte do conteudo e não o site todo, voc~e sabem s eé possivel, o conteudo que quero pegar esta dentro de uma div.

 

Abraço a todos

 

ué amigo, pega tudo com o manipulador cURL mesmo e faça uma substring para pegar o que você quer, com o uso de E.Rs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal estou pegando o conteúdo de um site com o curl, porém so quero uma parte do conteudo e não o site todo, voc~e sabem s eé possivel, o conteudo que quero pegar esta dentro de uma div.

 

Abraço a todos

 

ué amigo, pega tudo com o manipulador cURL mesmo e faça uma substring para pegar o que você quer, com o uso de E.Rs

 

Então tentei fazer assim porém eu sei onde começa o conteudo que quero pagar que seria <div id="box_a">, porém não consigopegar o final pois o fim acaba com </div> e tem varias </div> na pagina, tem algum exemplo aí de como você fez

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah sim, realmente fica mais dificil.

faz assim, ao retornar com o cURL, crie um algoritmo que conte a quantidade de ocorrências da palavra "div"

Supondo que seja 10 no total, incluindo a "box_a".

 

Então, veja em qual posição a sua DIV box_a está entre estas 10, o fim do fechamento desta DIV será na posição inversa, ou seja, se a sua DIV é a 3ª da ordem, o fim do fechamento dela será a 7º div

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah sim, realmente fica mais dificil.

faz assim, ao retornar com o cURL, crie um algoritmo que conte a quantidade de ocorrências da palavra "div"

Supondo que seja 10 no total, incluindo a "box_a".

 

Então, veja em qual posição a sua DIV box_a está entre estas 10, o fim do fechamento desta DIV será na posição inversa, ou seja, se a sua DIV é a 3ª da ordem, o fim do fechamento dela será a 7º div

 

Opa boa ideia como posso fazer esse algoritimo para contar essas divs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha, acredito não ter outra forma de fazer a não ser com preg_match

Eu até tentaria fazer um script, mas não mecho com expressoes regulares...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha, acredito não ter outra forma de fazer a não ser com preg_match

Eu até tentaria fazer um script, mas não mecho com expressoes regulares...

 

É expressões regulares não é meu foco também mas vou tentar fazer, e posto aqui o resultado e o script que deve ser de grande importancia para o pessoal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal consegui fazer desse jeito com a ajuda do jquery

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="jquery1_4_2.js"></script>
<script type="text/javascript">
$(document).ready(function(){

	$('#conteudo2').html($('#conteudo').find('#main-wrapper').html());
});
</script>
</head>

<body>
<div id="conteudo" style="width:510px; height:500px; float:left; display:none">
<?php


   	$ch = curl_init();

	// informar URL e outras funções ao CURL
	curl_setopt($ch, CURLOPT_URL, "http://www.blogdaon.blogspot.com/");
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

	// Acessar a URL e retornar a saída
	$output = curl_exec($ch);


	echo $output;
?>

   </div>

   <div id="conteudo2" style="width:510px; height:500px; background-color:#FFF; overflow:auto; float:left">
   </div>
</body>
</html>

 

O que eu fiz, usei o curl para pegar o conteudo joguei ele dentro da div e usei a função fund do jquery para busca o conteudo da div que queria, então joguei o conteudo dessa div em outra div.

 

Abraço a todos duvida posta aí

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa solução, bem melhor do aquela que eu sugeri. nossa, como eu não pensei nisto?

vou guardar o código aqui, inclusive você poderia postar lá no laboratório de script...

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.