"formail" en Perl
Alvaro Herrera
alvherre en alvh.no-ip.org
Mar Jul 28 20:08:43 CLT 2009
Alvaro Herrera escribió:
> Hasta ahora me ha ido bastante bien; tengo un programa en Perl el cual,
> dado un mail, extrae los datos interesantes con MIME::Parser y los metes
> en una base de datos para posterior despliegue.
Total que descarté esta idea en favor de usar un módulo más moderno, que
es varios órdenes de magnitud más rápido; el código inicial se ve así:
#!/usr/bin/perl
use warnings;
use strict;
binmode(STDOUT, ':utf8');
use Mail::Box::Manager;
my $mgr = new Mail::Box::Manager;
print "opening\n";
my $folder = $mgr->open(folder => 'Mail/test.mbox2');
print "opened $folder\n";
for my $msgnum (0 .. $folder->messages - 1) {
my $message = $folder->message($msgnum);
print "messageid: " , $message->messageId, "\n";
print "subject: ", $message->study('subject'), "\n";
print "from: ", $message->study('from'), "\n";
my @dests = $message->destinations;
print "recipients (", $#dests, "): ", (join ", ", (map { $_->address } @dests)), "\n";
print "\n";
}
print "done scanning messages\n";
$folder->close;
print "done\n";
--
Alvaro Herrera http://www.amazon.com/gp/registry/5ZYLFMCVHXC
"En las profundidades de nuestro inconsciente hay una obsesiva necesidad
de un universo lógico y coherente. Pero el universo real se halla siempre
un paso más allá de la lógica" (Irulan)
Más información sobre la lista de distribución Linux