You can also use the following code
use warnings; use strict; use Mail::POP3Client; use IO::Socket::SSL; use CGI qw(:standard); my $cgi = new CGI; my $LOG ; open $LOG , ">>filename" ; my $username = ' name@gmail.com '; my $password = '*******' ; chomp($password); my $mailhost = 'pop.gmail.com'; my $port = '995'; $cgi->header(); my $pop = new Mail::POP3Client( USER => $username, PASSWORD => $password, HOST => $mailhost, PORT => $port, USESSL => 'true', DEBUG => 0, ); if (($pop->Count()) < 1) { exit; } print $pop->Count() . " messages found!:$!\n"; for(my $i = 1; $i <= $pop->Count(); $i++) { foreach($pop->Head($i)) { /^(From|Subject|Email):\s+/i && print $_, "\n"; } $pop->BodyToFile($LOG,$i); } $pop->Close(); exit;
source share