use Mail::Internet; use MIME::Parser; $mail = new Mail::Internet \*STDIN; # Create new parser my $parser = new MIME::Parser; # Keep parsed message bodies in core $parser->output_to_core('ALL'); # Make the Mail::Internet message into an array @lines = (@{$mail->header}, "\n", @{$mail->body}); # Parse an in-core MIME message $parser->parse_data(\@lines); $ent->make_multipart; @parts = $ent->parts; foreach my $i ( 0 .. $#parts ) { print "Part $i ". $parts[$i]->mime_type . "\n\n"; }