Pular para o conteúdo
  • Denunciar
  • Indicar

1. WHILE ...

Enviado em 13/03/2009 - 17:13h

Então galera...

tenho a seguinte url:

www.site.com.br/lol.php?id=1

Sendo que na source dessa página eu tenho que pegar uma "string" que está entre as tags <p><i></i></p>

E também tenho que pegar a mesma coisa nas outras páginas...

www.site.com.br/lol.php?id=1
www.site.com.br/lol.php?id=2
www.site.com.br/lol.php?id=3
www.site.com.br/lol.php?id=4
www.site.com.br/lol.php?id=5
...

Então fiz o seguinte código...

...
while ( $chave <= 200) {

$url = "http://wwww.site.com.br/lol.php?id=$chave;
$lwp = LWP::UserAgent->new();
$lwp -> agent("Mozilla/5.0 (Windows; U; Windows NT 5.1; en; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4");
$connect = $lwp -> get($url);

if ( $connect -> content =~ /<p><i>(.*)<\/i><\/p>/ ) { print "$1\n"; }

$chave++;

}


Só que tipo, eu não sei por quantas páginas eu vou ter que fazer essa tarefa...
Então não tenho como por um número fixo no lugar de 200...
Dai ele fica pegando o que eu quero, e quando acaba ele fica retornando em vazio entende?
Como fazer pra parar ele?

Eu já tentei por um else no if...


else { exit;};


Mais não deu, ele pega apenas 1 e dps sai :S
Help?


###################################################################################

Outro problema aqui rs

Eu quero fazer a mesma coisa o código acima faz, porém ele tem que pegar o que está entre as tags <p><i></i></p> mais de 1 vez por PÁGINA...
E eu não tive nenhuma ideia de como fazer.... :S
Alguém tem alguma ideia de como fazer?

Responder tópico

2. Re: WHILE ...

Enviado em 17/03/2009 - 00:52h

up

3. acho que talvez

Enviado em 31/03/2009 - 00:22h



$x=1
while ( $chave <= $x) {

$url = "http://wwww.site.com.br/lol.php?id=$chave;
$lwp = LWP::UserAgent->new();
$lwp -> agent("Mozilla/5.0 (Windows; U; Windows NT 5.1; en; rv:1.9.0.4) Gecko/2008102920 Firefox/3.0.4");
$connect = $lwp -> get($url);

if ($x) {
( $connect -> content =~ /<p><i>(.*)<\/i><\/p>/ ) { print "$1\n"; }
$chave++; }
else ($exit)

}

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder