私はgmailからメールを引き出し、Rubyでコンテンツを入手できるシステムを作成しようとしています。 (imapやpopを使って)
そして私が知っている限り、これを行うのに役立つかもしれない 'ruby-gmail'、 'mail'(tmailの新しいバージョン)と 'action mailer'があります。Ruby、MIMEマルチパートでメールを正しくデコードする方法は?
私は今のメール」と「ルビーのGmail」をしようとしている、と私はこのようなデコード機能を使用します。
gmail.inbox.emails[0].body.decoded
をしかし、いくつかのメールが正しく復号することができますが、一部にはできませんでした。デコードされたメールの出力は次のようになります
:
This is MIME multipart 6.
--__=_Part_Boundary_002_310696381.907173471
Content-Type: text/plain;
charset="big5"
Content-Transfer-Encoding: quoted-printable
=AE=BC=A5=BF=A7A=A6n,
.......(some encoded content)
そして、いくつかの他のメールに、コンテンツ転送エンコーディングは、base64です。
メールを正しくデコードする方法はありますか?
またはメールを読んで、符号化された部分 を取得し、Base64.decode64を使用するか、メールをデコードするために「M」を展開する必要がありますか?
おかげで必要があると思いますので、また、それが添付可能性があることに注意してください!私は出力が奇妙に見える理由を知った!元のメールは英語ではなく中国語になっているからです。私が必要とするのは、asciiとUnicodeデコーダですが、MIMEデコーダはありません。ご協力いただきありがとうございます! – lintingy
'multipartメッセージで' mail.body.decode'を試してはいけません。なぜなら、それは動作しないからです。多分前にそれをテストしますか? –