尝试使用 ruby 宝石打开/访问电子邮件附件中的文本
Trying to open / access the text in an attachment to an email using ruby gems
目前正在尝试编写代码以使用 ruby gems 从电子邮件中的文本文件附件中提取文本。使用 'mail' gem.
这就是我发现的隔离 body 的代码:
mail = Mail.all
mail.each do |current_mail|
mail_object = Mail.read_from_string(current_mail)
puts mail_object.body
end
这很适合找到 body 但是当我们附加一个 .txt 文件时 returns this:
--_000_DM6PR04MB6138740F20BC287E0587E27281720DM6PR04MB6138namp_--
--_004_DM6PR04MB6138740F20BC287E0587E27281720DM6PR04MB6138namp_
Content-Type: text/plain;
name=readable.txt
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
creation-date="Mon, 27 Jul 2020 21:10:20 GMT";
filename=readable.txt;
modification-date="Mon, 27 Jul 2020 21:10:22 GMT";
size=16
Content-Description: readable.txt
Y2FuIHdlIHNlZSB0aGlzPw==
--_004_DM6PR04MB6138740F20BC287E0587E27281720DM6PR04MB6138namp_--
所以我可以看到它找到了附件名称和文件名但是有没有办法从这里访问文本这个文件?
文本文件附件将进行 Base64 编码。所以你应该能够像这样解码它。
puts current_mail.attachments.each{|a| a.decode_body}
=>"can we see this?"
目前正在尝试编写代码以使用 ruby gems 从电子邮件中的文本文件附件中提取文本。使用 'mail' gem.
这就是我发现的隔离 body 的代码:
mail = Mail.all
mail.each do |current_mail|
mail_object = Mail.read_from_string(current_mail)
puts mail_object.body
end
这很适合找到 body 但是当我们附加一个 .txt 文件时 returns this:
--_000_DM6PR04MB6138740F20BC287E0587E27281720DM6PR04MB6138namp_--
--_004_DM6PR04MB6138740F20BC287E0587E27281720DM6PR04MB6138namp_
Content-Type: text/plain;
name=readable.txt
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
creation-date="Mon, 27 Jul 2020 21:10:20 GMT";
filename=readable.txt;
modification-date="Mon, 27 Jul 2020 21:10:22 GMT";
size=16
Content-Description: readable.txt
Y2FuIHdlIHNlZSB0aGlzPw==
--_004_DM6PR04MB6138740F20BC287E0587E27281720DM6PR04MB6138namp_--
所以我可以看到它找到了附件名称和文件名但是有没有办法从这里访问文本这个文件?
文本文件附件将进行 Base64 编码。所以你应该能够像这样解码它。
puts current_mail.attachments.each{|a| a.decode_body}
=>"can we see this?"