Re: MIME::Parser .. how to get just the message part of the body



try this one.Incomming poarameter must be text of the message
sub get_email_body {
my $MESSAGE = shift;
use MIME::Parser;

$parser = MIME::Parser->new( );

$message = $parser->parse_data($MESSAGE); # die( )s if can't parse

$head = $message->head( ); # object--see docs
$preamble = $message->preamble; # ref to array of lines
$epilogue = $message->epilogue; # ref to array of lines

print "\npreamble:".Dumper($preamble);
print "\nepilogue:".Dumper($epilogue);

$num_parts = $message->parts;
for (my $i=0; $i < $num_parts; $i++) {
my $part = $message->parts($i);
my $content_type = $part->mime_type;
my $body = $part->as_string;

# print "\n".$content_type."\n";
# print "\n".$body."\n\n\n";

if ($content_type eq 'text/plain') {
return $part->bodyhandle->as_lines;
}
}

}

.