Jump to content


Photo

Problemas Na Identificação


  • Faça o login para participar
5 replies to this topic

#1 Luke

Luke

    O Que Sei É Que Nada Sei

  • Usuários
  • 304 posts
  • Sexo:Não informado
  • Localidade:Bsb

Posted 11/02/2009, 11:11

Prezados,

tenho o seguinte code
<?php ini_set("max_execution_time",0);$html=file_get_contents("http://www.endereco.com.br"); // Abre a página preg_match_all("((frame src|iframe src) *?= *?(\"|\')(.+?)\\2)i",$html,$array);foreach($array[3] as $url){	echo $url."<br>";}?>

ele acessa a URL identifica se há ocorrencia de alguma tag FRAME SRC ou IFRAME SRC....e mostra os links q compoe

por exemplo:

index.html é composta por top.html quadro.html etc..
dae ele mostra top.html e quadro.html


até ai tudo Ok



Mas estou tendo uma certa dificuldade em fazer com q ele identifique tmb as urls q compoem a página caso o endereço do SRC venha depois de name

exemplo

se o endereço vier frame name="nomeaqui" src="quadro.html"
o script mostra apenas o nome do frame e nao o SRC.....

alguem poderia dar uma luz de como eu poderia pegar o SRC mesmo ele vindo apos o nome do FRAME


grato
######################
"A humanidade está perdendo seus maiores gênios... Aristóteles faleceu, Newton bateu as botas, Einstein morreu, e eu não tô passando muito bem hoje... "

#2 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 11/02/2009, 21:38

alguem poderia dar uma luz de como eu poderia pegar o SRC mesmo ele vindo apos o nome do FRAME


Na base de regex, o que você pode fazer é pegar cada <iframe ...> e então aplicar outra regex pegando o atributo desejado.
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#3 Luke

Luke

    O Que Sei É Que Nada Sei

  • Usuários
  • 304 posts
  • Sexo:Não informado
  • Localidade:Bsb

Posted 12/02/2009, 14:22

arrego...

desisto! :wacko: todas as maneiras q tento ele não consegue percorrer a TAG frame pra pegar o valor de SRC
tem como dar um help?

valew cara!
######################
"A humanidade está perdendo seus maiores gênios... Aristóteles faleceu, Newton bateu as botas, Einstein morreu, e eu não tô passando muito bem hoje... "

#4 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 12/02/2009, 21:36

É disso que me refiro:

<?php

$str = <<<TEST
<frame src="foo" name="bar">
<frame name="foo" src="bar">
TEST;

preg_match_all('/<frame[^>]+>/', $str, $matches);

if (!empty($matches[0])) {
	foreach ($matches[0] as $html) {
		preg_match('/name="([^"]+)"/', $html, $match);
		var_dump($match[1]);
	}	
}

Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29

#5 Luke

Luke

    O Que Sei É Que Nada Sei

  • Usuários
  • 304 posts
  • Sexo:Não informado
  • Localidade:Bsb

Posted 13/02/2009, 07:45

RESOLVIDO:
caso alguem se interesse

<?

$file = 'http://www.endereco.gov.br';
$str = file_get_contents($file) or die('Não foi possivel ler a URL');

preg_match_all('/<frame[^>]+>|<iframe[^>]+>/',$str,$matches);

foreach ($matches[0] as $html) {
preg_match('/src="([^"]+)"/', $html, $match);
echo $match[1]."<br>";
}

?>


Valew pela força Eclesiastes....

Edição feita por: Luke, 13/02/2009, 11:30.

######################
"A humanidade está perdendo seus maiores gênios... Aristóteles faleceu, Newton bateu as botas, Einstein morreu, e eu não tô passando muito bem hoje... "

#6 Felipe Pena

Felipe Pena

    O temor do Senhor é o princípio da sabedoria

  • Ex-Admins
  • 6441 posts
  • Sexo:Masculino

Posted 14/02/2009, 19:07

Só pra constar...

/<frame[^>]+>|<iframe[^>]+>/

pode ser reduzido para:
/<i?frame[^>]+>/

O '?' após o 'i' ali, o faz opcional. ;)
Felipe Pena
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq