我正试图从电子邮件中提取信息。我有一个.eml文件列表,并有一个ruby程序来读取每条消息,然后打印输出。
以下是我目前为止的代码:
#!/usr/bin/env ruby
require 'mail'
basedir = '.'
files = Dir.glob("*.eml")
files.each do |i|
mail = Mail.read(i)
puts "filename: #{i}"
puts "from: #{mail.from}"
puts "to: #{mail.to}"
end
它工作,但我试图从电子邮件地址获得全名。所以我不是只得到"bobloblaw@example.com"
而是得到"<Bob Loblaw> bobloblaw@example.com"
。
2条答案
按热度按时间5vf7fwbs1#
您应该可以像这样使用
display_names
属性:请注意,
display_names
是一个数组,因为一条消息可以有多个收件人。上面的代码会给你一个名字。gmol16392#
您可以直接访问
header
来检索此信息。更多方法请参见
common_address.rb
。