我是Mojolicus的新手,在带有类模块的p标签中查找链接的标题,例如
<p class="Module"><a class="story" href="http://intranet/blah" >Link Text is here</a></p>
我使用以下代码:
my $dom = Mojo::DOM->new( $page );
for my $elm ( $dom->find('p.Module > a.story')->each ){
print $elm->text ."n";
}
相当粗糙,但很实用。我目前还不知道(对我来说可能已经太晚了)如何返回href和链接文本。请让我摆脱痛苦。
您只需要attr
方法:
my $dom = Mojo::DOM->new( $page );
for my $elm ( $dom->find('p.Module > a.story')->each ){
print $elm->text, ' ', $elm->attr('href'), "n";
}
有关Mojo::UserAgent
和Mojo::DOM
的快速教程,请查看Mojocast第5集
这里有一种使用mojo::Collection的map
:的方法
use v5.10;
use Mojo::DOM;
use Data::Dumper;
my $page =<<'HTML';
<p class="Module"><a class="story" href="http://intranet/blah" >Link Text is here</a></p>
HTML
my $dom = Mojo::DOM->new( $page );
my @links = $dom
->find('p.Module > a.story')
->map( sub { [ $_->text, $_->attr( 'href' ) ] } );
say Dumper @links;