[SP-pm] Res: use WWW::Mechanize

Ricardo Filipo ricardo_filipo at yahoo.com.br
Wed Sep 17 14:55:06 PDT 2008


Acho q o q vc quer é:

<code>
#!/usr/bin/perl

use strict;
use warnings;
use WWW::Mechanize;
my $url = "http://www.google.com.br/search?hl=pt-BR&q=nasa&btnG=Pesquisa+Google&meta=";
my $busca = WWW::Mechanize->new();
my $res;
$busca->get($url);
foreach $res ($busca->links){
  print $res->url."\n";
  }
</code>



----- Mensagem original ----
De: Eden Cardim <edencardim em gmail.com>
Para: saopaulo-pm em mail.pm.org
Enviadas: Quarta-feira, 17 de Setembro de 2008 18:47:30
Assunto: Re: [SP-pm] use WWW::Mechanize

2008/9/17 Daniel de Oliveira Mantovani <daniel.oliveira.mantovani em gmail.com>:
> print $1 for $busca=~ /<a href="(.*)">/;

Nunca use expressões regulares para parsear HTML ou qualquer outro
tipo de XML, a não ser que você saiba *bem* o que está fazendo.

> Gostaria de saber como faço para imprimir só o que ta entre parênteses de
> uma forma correta, tentei usar o find_all_links() mas vem tudo até o que não
> é link.
>
> #!/usr/bin/perl
>
> use strict;
> use warnings;
> use WWW::Mechanize;
> my $url =
> "http://www.google.com.br/search?hl=pt-BR&q=nasa&btnG=Pesquisa+Google&meta=";
> my $busca = WWW::Mechanize->new();
> $busca->get($url);
> $busca->find_all_links();
> print $busca->content;

É porque você está não está usando a API corretamente. A documentação
do WWW::Mechanize diz que ->find_all_links retorna uma lista de
objetos WWW::Mechanize::Link.

-- 
edenc.vox.com
_______________________________________________
SaoPaulo-pm mailing list
SaoPaulo-pm em pm.org
http://mail.pm.org/mailman/listinfo/saopaulo-pm



      Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses


More information about the SaoPaulo-pm mailing list