Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как использовать вывод WWW::Mechanize?

Автор вопроса: Sandra SchlichtingОтветов: 1

Я хотел бы просмотреть все ссылки на веб-странице, поэтому я попытался

#!/usr/bin/perl

use WWW::Mechanize;

my $url = "http://www.google.com";
my $m = WWW::Mechanize->new();
$m->get($url);

my @links = $m->find_all_links(url_regex => qr/google/);

foreach my $link (@links){
    print Dumper $m->get($link->url_abs);
}

что дает мне, например.

$VAR11 = bless( [
                  'http://www.google.com/ncr',
                  'Google.com in English',
                  undef,
                  'a',
                  $VAR1->[4],
                  {
                    'href' => 'http://www.google.com/ncr',
                    'class' => 'gl nobr'
                  }
                ], 'WWW::Mechanize::Link' );

Вопрос

Как вывести только ссылки?

perlmechanizewww-mechanize

Ответы

Ответ 1 · рейтинг 6 · Sinan Ünür

В документации указано, что ссылки возвращаются как объекты WWW::Mechanize::Link. Поэтому:

my @links = $m->find_all_links(url_regex => qr/google/);
print $_->url, "\n" for @links;

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы