<br><br><div><span class="gmail_quote">Em 28/05/07, <b class="gmail_sendername">Alceu Rodrigues de Freitas Junior</b> <<a href="mailto:glasswalk3r@hotmail.com">glasswalk3r@hotmail.com</a>> escreveu:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>Segue os dois centavos de hoje abaixo...<br><br>> > dei uma melhorada no meu script... alguém quer me ajudar?<br>
<br>
Eu coloquei nomes de variáveis mais compreensíveis no seu código... não testei, então alguns erros gerados pela pragma strict podem acontecer.<br><br>
<code><br>#!/usr/bin/perl<br><br>
use warnings;<br>use strict;<br>use WWW::Mechanize;<br>use IO::Uncompress::Gunzip;<br><br>my $browser = WWW::Mechanize->new;<br>my $onde = shift || "rio";<br>my %monks;<br>$browser->get(" <a href="http://mail.pm.org/pipermail/$onde-pm/" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
http://mail.pm.org/pipermail/$onde-pm/</a>");<br>my @links = $browser->find_all_links( url_regex => qr#\d{4}-\w+.txt#, );<br><br>for my $link (@links) { <br><br> print $link->url_abs(), $/;<br> $browser->get($link->url_abs);
<br><br> my $content = $browser->content();<br> my $buffer;<br><br> if ($link->url_abs =~ /\.gz$/) {<br><br> my $unzip_content = new IO::Uncompress::Gunzip \$content;<br> $unzip_content->read($buffer);
<br><br> } else {<br><br> $buffer = $content;<br><br> }<br><br> $buffer =~ s#<code>.*?</code>##gsm;<br>
<br>
my $from;<br><br>
# que diabos é $a?</div></blockquote><div><br># $a?! Sei lá o q é $a... acho q a é de alguma coisa... <br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>
for my $a ( split m#$/#, $buffer ) {<br><br>
$from = $1 if $a =~ m#^\s*From: (.+)$#;<br><br>
if($a =~ /^\s*\(?([\w]+)\)?((:?\+|-){2})\s*(#.*)?$/) {<br><br>
# não dá para tirar esse eval daqui? seria melhor por questões de performance</div></blockquote><div><br># dá... if ($i eq "++"){$monks{ lc $1 }++}else{$monks{ lc $1 }--}<br></div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>
eval "\$monks{" . lc $1 . "}$2";<br> <br>
print "From: $from$/$a$/$/";<br><br>
}<br>
}<br>}<br><br>
print "$_ => $hash{$_}$/" for keys %monks;<br><br>
</code><br><br>[]'s<br><span class="sg">
Alceu</span><span class="q"><br><br><hr>Invite your mail contacts to join your friends list with Windows Live Spaces. It's easy! <a href="http://spaces.live.com/spacesapi.aspx?wx_action=create&wx_url=/friends.aspx&mkt=en-us" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
Try it!</a></span></div>
<br>_______________________________________________<br>Cascavel-pm mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Cascavel-pm@pm.org">Cascavel-pm@pm.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://mail.pm.org/mailman/listinfo/cascavel-pm" target="_blank">
http://mail.pm.org/mailman/listinfo/cascavel-pm</a><br></blockquote></div><br><br clear="all"><br>-- <br>[]'s Fernando