#perl #mojo-dom
#perl #mojo-dom
Вопрос:
Ниже я поместил выдержку со страницы IMDb, я намеренно сделал ее короткой. Моя конечная цель — получить 2 ссылки. Но я даже не могу понять, как получить конкретный div с идентификатором. Потому что, очевидно, приведенный ниже класс разбросан по всей странице. Я Погуглил, ища пример с использованием class и id, но все еще не могу найти решение.
p.s. Единственная причина, по которой у меня есть Dumper, заключается в том, что когда я его запускаю, я сразу вижу, почему у меня его до сих пор нет.
my $ua = Mojo::UserAgent->new( max_redirects=>3, timeout => 30 );
my $dom = $ua->get($newrip)->result->dom;
my $module_list = $dom->find('div.article');
print Dumper $module_list;
exit;
<div class="article" id="titleDetails">
<span class=rightcornerlink>
<a href="/register/login?why=editamp;ref_=tt_dt_dt" rel="login">Edit</a>
</span>
<h2>Details</h2>
<div class="txt-block">
<h4 class="inline">Official Sites:</h4>
<a href="/offsite/?page-action=offsite-facebookamp;token=BCYtlGRCvvzcjTOrSRBQqjTPuEUBGkxbnkfQjRYZi0XJxm-A-A4vf0mzJF5WqH6HYLt2TZCuVR7c
209QQMCwUe-51EwtDDYbNczYCnFRIRzctUhoXJCF2gsQJw6m050sV9g0sTJJEfiGP37rfeIIoXMS
Cfj2qgUNCaL2YaP_FeWVGCg39Bw-3dRsP5cB1Wk9FfobPd5tG8Q4WjVbUR2pTOvE0Pkc5QUK5E7U
X7O9awNb0Kw
amp;ref_=tt_pdt_ofs_offsite_0"
rel="nofollow">Official Facebook</a>
<span class="ghost">|</span>
<a href="/offsite/?page-action=offsite-upheamp;token=BCYp_aZBofVk38VkRssgAyKsF6hpxed35fbTVV8UlILwujLNjtFs2jVedrKeAqxUjICHsNP4JDb6
bL8Kmal9v2xFtXeROzfpKNd_XK78SUE6Cw7zJEoHxf9Ad6Cg2bzVOYY8FK26b5cQS2-Rk3oYF3zH
F0eXIUjmsj6NPfx_Tc5BoWZU-8nwSJptfgT4OqUPlYMhxtdzjFjaXgWHNLt0uV9sf3Zuz50I9GFo
dEv_xXgUbfo
amp;ref_=tt_pdt_ofs_offsite_1" rel="nofollow">Official site</a>
<span class="see-more inline"></span>
</div>
Комментарии:
1. мои $ anchor_tags = $dom-> find(‘div.article a’); мои $ anchor_hrefs = $anchor_tags-> map(attr => ‘href’); Для идентификатора вы можете написать — $ dom-> find(‘div#titleDetails a’); Всякий раз, когда мне нужен примердля Mojo: DOM я смотрю на — perl.com/article/143/2015/1/8 /…
2. @Maverick Спасибо за эту ссылку, это та, которую я изучал. Кажется, у меня в голове не укладывается, как объединить два поиска. т.е. Класс и Заголовок, а затем найти все в этом подразделе. Mojo определенно намного мощнее, чем WWW ::Mechanize, но это заставляет меня зацикливаться