Eu gosto do HTML::TreeBuilder pois dá uma visão mais organizada do DOM.<br /><br />Veja um exemplo de uso:<br />https://github.com/rfilipo/WebService-EBC/blob/master/lib/WebService/EBC/News.pm<br /><br> <blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; margin-top: 5px; padding-left: 5px;">  <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div  dir="ltr" > <font size="2" face="Arial"> <hr size="1">  <b><span style="font-weight:bold;">De:</span></b> Aureliano Guedes <guedes_1000@hotmail.com><br> <b><span style="font-weight: bold;">Para:</span></b> Rio PM <rio-pm@pm.org> <br> <b><span style="font-weight: bold;">Enviadas:</span></b> Sexta-feira, 19 de Outubro de 2012 13:22<br> <b><span style="font-weight: bold;">Assunto:</span></b> [Rio-pm] HTML::Parse<br> </font> </div> <br><meta
 http-equiv="x-dns-prefetch-control" content="off"><div id=yiv723589328><html>
<head>
<style><!--
#yiv723589328 .yiv723589328hmmessage P
{
margin:0px;padding:0px;}
#yiv723589328 body.yiv723589328hmmessage
{
font-size:10pt;font-family:Tahoma;}
--></style></head>
<div><div dir='ltr'>
Ola monges,<br>tudo bem?<br><br>Qual um bom modulo para buscar string em um HTML?<br>Vocês aconselham o HTML::Parse?<br><br>Eu não entendo muito de html, mas estou tentando pegar um link dentro de uma pagina.<br><br>Um exemplo é esse: http://www.buscamp3.org/busca/Thaeme+e+Thiago+-+Ai+que+do/<br><br>Os Links estão nesse formato: <br><pre id="yiv723589328line1"><span><<span class="yiv723589328start-tag">a</span> <span class="yiv723589328attribute-name">href</span>="<a rel="nofollow" class="yiv723589328attribute-value">/download/thaeme+e+thiago+ai+que+do_3473494b6c3636334d55.html</a>" <span class="yiv723589328attribute-name">title</span>="<a rel="nofollow" class="yiv723589328attribute-value">Thaeme E Thiago - Ai Que Do</a>"></span><span></span></pre><br>O Problema é que no caso dessa pagina tem 4 links desse modelo e eu queria pegar apenas o primeiro.<br>Poderia usar regexp mas anteriormente me disseram que não é muito
 elegante parsear HTML na unha.<br><br>Sei que a duvida é banal, mas se puderem me dar uma dica agradeço.<br><br>Att,<br>Aureliano Guedes.<br>                                        </div></div>
</html></div><meta http-equiv="x-dns-prefetch-control" content="on"><br />_______________________________________________<BR>Rio-pm mailing list<BR><a ymailto="mailto:Rio-pm@pm.org" href="mailto:Rio-pm@pm.org">Rio-pm@pm.org</a><BR><a href="http://mail.pm.org/mailman/listinfo/rio-pm" target=_blank >http://mail.pm.org/mailman/listinfo/rio-pm</a><br><br> </div> </div> </blockquote>