in reply to Re^3: Mail::Pop3Client - want to get consistent body text
in thread Mail::Pop3Client - want to get consistent body text

Here's what I have now for my code:
for (my $i=1; $i<=$messages; $i++){ foreach($pop->Head($i)){ if($_=~/^From:[^<>]*\<(.*)\>/){ $emails[$i]->{'from'}=$1; } if($_=~/^Subject:(.*)/){ $emails[$i]->{'subject'}=$1; } } my $headAndBody=$pop->HeadAndBody($i); my $email=Email::MIME->new($headAndBody); my @parts=$email->parts(); my $body=$email->body(); print $body."\n\n"; $emails[$i]->{'body'}=$body; }

Replies are listed 'Best First'.
Re^5: Mail::Pop3Client - want to get consistent body text
by zwon (Abbot) on May 20, 2009 at 10:24 UTC

    No, you should call body for each part separately, like this (not tested!):

    my $email=Email::MIME->new($headAndBody); my @parts = $email->parts(); print $_->body(), "\n" for @parts;

    Note that each part may be multipart, so you should check this.

      Beautiful! That worked. Thanks!
Re^5: Mail::Pop3Client - want to get consistent body text
by Anonymous Monk on May 20, 2009 at 03:27 UTC