Ir para conteúdo

POWERED BY:

Arquivado

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

fermel

Pegar conteudo dentro de TAGS html

Recommended Posts

Galera consigo pegar o conteudo das tags


<title>blablabla</title>
<p>blablablabla</b>

 


mas não consigo pegar o conteudo das tags h1, h2, etc....

 

o código que estou utilizando é este

preg_match("/<title>(.+)<\/title>/i", $html, $titulo);
		preg_match("/<h2>(.+)</h2>/i", $html, $h1);
		preg_match("/<h2>(.+)<\/h2>/i", $html, $h2);
		preg_match("/<h3>(.+)<\/h3>/i", $html, $h3);
		preg_match("/<h4>(.+)<\/h4>/i", $html, $h4);
		preg_match("/<h5>(.+)<\/h5>/i", $html, $h5);
preg_match("/<p>(.+)<\/p>/i", $html, $p);

 

quando eu mando exibir o conteudo ele aparece só os das tags title e da tag P o resto fica em branco...

 

alguem sabe o que pode estar errado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera consigo pegar o conteudo das tags

 

<title>blablabla</title>
<p>blablablabla</b>

 


mas não consigo pegar o conteudo das tags h1, h2, etc....

 

o código que estou utilizando é este

preg_match("/<title>(.+)<\/title>/i", $html, $titulo);
		preg_match("/<h2>(.+)</h2>/i", $html, $h1);
		preg_match("/<h2>(.+)<\/h2>/i", $html, $h2);
		preg_match("/<h3>(.+)<\/h3>/i", $html, $h3);
		preg_match("/<h4>(.+)<\/h4>/i", $html, $h4);
		preg_match("/<h5>(.+)<\/h5>/i", $html, $h5);
preg_match("/<p>(.+)<\/p>/i", $html, $p);

 

quando eu mando exibir o conteudo ele aparece só os das tags title e da tag P o resto fica em branco...

 

alguem sabe o que pode estar errado?

 

 

Veja isso aí

 

 

preg_match("/<h2>(.+)</h2>/i", $html, $h1);

 

e compare com as outras

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja isso aí

 

 

preg_match("/<h2>(.+)</h2>/i", $html, $h1);

 

e compare com as outras

 

o que tem de errado com as outras? eu errei na hora de copiar mas mesmo asism as outras estão certas e não estão pegando o conteudo

Compartilhar este post


Link para o post
Compartilhar em outros sites

pelo que vi no link que voce me mandou, para eu usar o DOM eu teria que saber a ordem das tags que eu queria pegar e no meu caso eu não sei a ordem pois estou tentando montar um pequeno buscador, ai a pessoa tem um campo para adicionar o site para indexar e aparecer nas buscas.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

se não me engano vc é o cara de outro topico sobre criar um buscador, certo ?

 

bom.. isso não muda.. a ordem das tags não tem nada a ver.. vc pode controlar isso pelo DOM..

entendeu como usar ?

No manual tem os exemplos..

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim sou eu mesmo.... estou criando e por enquanto estou conseguindo fazer algo, só que o que eu não entendo é porque o codigo que eu postei funciona com as tags title e P e não funciona com as tags H.... vou tentar fazer com o DOM para ver se da certo mas acho mais simples ver o que está de errado no código que postei...

 

 

Galera consegui achar o erro...

 

 

 

segue o código certo para quem precisar algum dia hehe

 

preg_match("/<title>(.+)<\/title>/i", $html, $titulo);		preg_match('/<h1.*?>(.*?)<\/h1>/is', $html, $h1);		preg_match('/<h2.*?>(.*?)<\/h2>/is', $html, $h2);		preg_match('/<h3.*?>(.*?)<\/h3>/is', $html, $h3);		preg_match('/<h4.*?>(.*?)<\/h4>/is', $html, $h4);		preg_match('/<h5.*?>(.*?)<\/h5>/is', $html, $h5);

 

Galera consegui achar o erro...

 

segue o código certo para quem precisar algum dia hehe

 

 

preg_match("/<title>(.+)<\/title>/i", $html, $titulo);		preg_match('/<h1.*?>(.*?)<\/h1>/is', $html, $h1);		preg_match('/<h2.*?>(.*?)<\/h2>/is', $html, $h2);		preg_match('/<h3.*?>(.*?)<\/h3>/is', $html, $h3);		preg_match('/<h4.*?>(.*?)<\/h4>/is', $html, $h4);		preg_match('/<h5.*?>(.*?)<\/h5>/is', $html, $h5);

 

 

 

galera encontrei um pequeno probleminha....

 

tem alguns sites que ele não está pegando o título ( title) do site... alguém sabe o que pode ser?

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode ser devido ao encode..

 

no meu script eu tenho essa função

 

function latin1($in) //Converter UTF-8 para ISO-8859-1, latin1
{
	if(mb_detect_encoding($in.'x', 'UTF-8, ISO-8859-1') == "UTF-8")
	return utf8_decode($in);
		else
		return $in;
}

 

será que tem que mudar algo para melhorar ela?

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.