PDA

Просмотр полной версии : Вопрос по ссылкам


mario_315
04.11.2008, 19:35
Помогите, пожалуйста. Нужен скрипт, который выбирал бы с url адреса ссылки и отображал бы их в читаемом виде для дальнейшей обработки. То, что представлено ниже выдает что-то типа: WWW::Mechanize::Link=ARRAY(0x1d07008) WWW::Mechanize::Link=ARR и т.д.

use strict;
use WWW::Mechanize 0.48;
my $mech = WWW:Mechanize->new();

$mech->get("http://www.somehost.ru/inde.html");

my @links = $mech->find_all_links( url_regex => qr/\.html$/);

for my $link (@links) {
print $link . "\n";
}

DenisRedis
21.12.2008, 23:56
так примерно:
use strict;
use locale;
use LWP::Simple;
use HTML::TreeBuilder;

my $text = get('http://www.nowa.cc/showthread.php?t=189249');
my $tree = HTML::TreeBuilder->new();
$tree->parse($text);

for my $a ( $tree->find_by_tag_name('a') ) {
print $a->attr('href') . "\n";
}

можно и проще. посмотрите подробнее lwp и html модули.

chorny
24.12.2008, 19:44
my @links = $mech->find_all_links( url_regex => qr/\.html$/);

for my $link (@links) {
print $link . "\n";
}

Прочитай документацию к WWW::Mechanize http://search.cpan.org/~petdance/WWW-Mechanize-1.52/lib/WWW/Mechanize.pm#$mech-%3Efind_all_links(_..._)
Each of the links returned is a WWW::Mechanize::Link object.
А вот к нему документация: http://search.cpan.org/~petdance/WWW-Mechanize-1.52/lib/WWW/Mechanize/Link.pm