Re: [問題] 要抓取mail-header和mail-body用些模組 …

看板Perl作者時間16年前 (2009/02/03 20:52), 編輯推噓2(201)
留言3則, 1人參與, 最新討論串2/4 (看更多)
※ 引述《audreytang (Audrey)》之銘言: : ※ 引述《deh3215 ()》之銘言: : : 現在想寫個程式對mail-header和body做處理,估狗爬文後發現mail模組眾多,目前打算 : : 郵件伺服器(/var/spool/使用者帳號)讀入信件做處理,不知道大家都用哪些mail模組處理 : : mail-header/body? : 如果祇需要讀取, 不用寫入的話, Email::Folder 應該就夠用了。 : 如果需要刪除, 則需併用 Email::Delete. : 關於 Mail Header/Body 的處理, 通常是用 Email::Simple 或 Email::MIME. : 另請參考: http://emailproject.perl.org/mediawiki/ : 如果對 Mailbox 需要做很複雜的處理, 也可以考慮 Mail::Box. : Cheers, : Audrey use Mail::Box::Manger; my $msg = Mail::Box::Manager->new; $folder_file = "/var/mail/使用者帳號"; my $folder = $msg->open(folder => $folder_file); for($folder->message) { print $_->head->get("Subject"),"\n"; print $_->head->get("From"),"\n"; } 結果為5555555555555 <== email的主旨 =?Big5?B?rHmq97ezpOuseQ==?= <XXX@gmail.com> <==email的寄件人 =?Big5?B?rHmq97ezpOuseQ==?= 為mail address 但是只想要後面email部分,前面那些 編碼如何去除? 另$_->head->get("From") 和$_->from差異在哪? $->from 印出結果是 Mail::Address 但後面email部分顯示ARRAY(0X8722187) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.168.75

02/10 00:12, , 1F
請愛用Data::Dumper
02/10 00:12, 1F


02/10 00:15, , 3F
以前寫的作業:)
02/10 00:15, 3F
文章代碼(AID): #19Y3udvb (Perl)
文章代碼(AID): #19Y3udvb (Perl)