EML (.eml)

背景

    • MIME 类型:message/rfc822
    • 电子邮件信息格式.
    • 用于大多数邮件系统来保存单个邮件信息.
    • 有二进制数据编码的文本格式.
    • 支持多用途因特网邮件扩展(MIME).
    • 支持 RFC 2045、RFC 2046、RFC 2047、RFC 4288、RFC 4289 和 RFC 2049.

Import

  • Import["file.eml"] 导入一个 EML 文件,返回一个给出对应邮件信息基本参数的关联.
  • Import["file.eml",elem] 从一个 EML 文件导入指定参数.
  • Import["file.eml",{elem,suba,subb,}] 导入子参数.
  • Import["file.eml",{{elem1,elem2,}}] 导入多个参数.
  • 导出格式可由 Import["file","EML"] Import["file",{"EML",elem,}] 指定.
  • 请到以下参考页面了解完整的基本信息:
  • Import从文件导入
    CloudImport从云对象导入
    ImportString从字符串导入
    ImportByteArray从字节数组导入

导入参数

  • Import 的通用参数:
  • "Elements" 该文件可用的参数和选项列表
    "Summary"文件摘要
    "Rules"所有可用参数的规则列表
  • 基本完整信息参数:
  • "MessageSummary"给出信息基本参数的关联
    "MessageElements"给出信息主要参数的关联
    "FullMessageElements"给出信息所有参数的关联
  • 默认情况下,Import 使用 "MessageSummaries" 参数.
  • 摘要参数:
  • "From"发件人姓名和电子邮件地址
    "ToList"收件人姓名和地址
    "CcList"复制的收件人姓名和地址
    "BccList"隐蔽抄送的收件人姓名和地址
    "OriginatingDate"电子邮件标头中客户端的日期和时间
    "Subject"电子邮件的主题
    "BodyPreview"邮件正文的简短预览
    "HasAttachments"邮件是否包含任何附件
    "MessageID"该消息的 ID
  • "MessageSummary" 包括所有摘要参数.
  • 附加消息参数:
  • "FromAddress"发件人原始电子邮件地址
    "FromName"发件人全名
    "ToAddressList"收件人地址
    "ToNameList"收件人全名
    "CcAddressList"复制的收件人地址
    "CcNameList"复制收件人全名
    "BccAddressList"隐蔽抄送的收件人地址
    "BccNameList"隐蔽抄送的收件人全名
    "ReplyToList"回复姓名和地址
    "ReplyToAddressList"回复地址
    "ReplyToNameList"回复全名
    "Body"作为字符串的消息正文
    "AttachmentList"作为表达式的经处理的附件列表
  • "MessageElements" 包括除 "BodyPreview""HasAttachments" 之外的所有摘要和消息元素.
  • 对于 "FullMessageElements""MessageElements""MessageSummary" 的子元素也可以用 {elem,keys} 格式给出,其中键可以是关联中的任何参数.
  • 可从以下分类导入每封邮件更多详细信息.
  • 信息正文参数:
  • "BodyPreview"邮件正文的简短预览
    "Body"作为字符串的消息正文
    "NewBodyContent"未回复或转发的正文部分
    "QuotedContent"被引用的正文部分
  • 内容识别和主线参数:
  • "MessageID"该信息的 ID
    "ReplyToMessageID"如有的话,该回复的信息 ID
    "ReferenceMessageIDList""参考" 消息 ID(通常在主线)
  • 信息路径相关参数:
  • "Precedence"公开的邮件优先级
    "ReturnPath"邮件中公开的返回路径
    "ReturnReceiptRequested"是否要求回执
    "DeliveryChainHostnames"邮件发送链上的主机名称
    "DeliveryChainRecords"邮件发送链上的完整记录
  • 邮件标题相关参数:
  • "Plaintext"作为字符串的完整原始邮件
    "HeaderString"作为字符串的完整邮件标题
    "HeaderRules"所有标题的规则列表
    "CharacterEncoding"邮件内容的字符编码
    "ContentType"邮件正文的 MIME 内容类型
    "MIMEVersion"MIME 标准的版本
  • 信息来源相关参数:
  • "OriginatingMailClient"原始邮件客户端类型
    "OriginatingIPAddress"原始客户端机器的 IP 地址
    "OriginatingHostname"原始客户端的主机名称
    "OriginatingCountry"地理 IP 推测的原始国家
    "OriginatingDate"从邮件标题得到的客户端日期和时间
    "OriginatingTimezone"基于标题的客户端时区
    "ServerOriginatingDate"原始服务器上的日期和时间
    "ServerOriginatingTimezone"原始服务器上的时区
  • 附件相关参数:
  • "HasAttachments"信息中是否含有任何附件
    "AttachmentNames"发配附件的名称列表
    "AttachmentList"给出附件内容的表达式列表
    "AttachmentSummaries"给出基本附件参数的关联列表
    "AttachmentData"给出附件原始编码数据的关联列表
    "AttachmentDecodedData"给出附件原始解码数据的关联列表
    "AttachmentDetails"给出内容和附件元素的关联列表
  • 参数 "AttachmentDetails" 是为每个附件提供关联的列表。该关联的常用参数如下:
  • "Name"附件发送的名称
    "MIMEType"内容的 MIME 类型
    "Content"导入的内容
    "ContentDisposition"附件的内容处理
    "ModificationDate"附件的修改日期记录
    "ByteCount"原始编码内容的位数
  • 参数 "AttachmentDecodedData" 是为每个附件提供关联的列表。该关联的常用参数如下:
  • "Name"附件发送的名称
    "MIMEType"内容的 MIME 类型
    "DecodedContent"作为字节数组的原始解码内容
    "ContentDisposition"附件的内容处理
    "ModificationDate"附件的修改日期记录
    "ByteCount"原始编码内容的位数
  • 参数 "AttachmentData" 是为每个附件提供关联的列表. 常见的该关联的参数如下:
  • "Name"附件发送的名称
    "MIMEType"内容的 MIME 类型
    "RawContent"作为字符串的原始编码内容
    "ContentTransferEncoding""RawContent" 的内容传输编码
    "ContentDisposition"附件的内容处理
    "ModificationDate"附件的修改日期记录
    "ByteCount"原始编码内容的位数
  • "AttachmentSummaries" 包含每个附件的 "Name""MIMEType" 和解码内容的 "ByteCount".

选项

  • Import 参数:
  • "AttachmentRules"<||>控制如何导入附件的规则
  • 作为关联的 "AttachmentRules" 可用设置包括:
  • fmtNone将格式 fmt 的附件导入为 None
    fmtelem在导入 fmt 附件时的 Import 参数
    fmtfun在解码的字节数组上使用纯函数 fun
  • 格式规范 fmt 可为任何 $ImportFormats 支持的格式或一个 MIME 类型.

范例

打开所有单元关闭所有单元

基本范例  (4)

导入一条电子邮件信息:

对 EML 文件导入信息摘要:

从 EML 文件导入信息标题:

从 EML 文件导入信息日期:

范围  (1)

导入一封邮件的指定参数作为 Association:

表示为 Dataset:

导入参数  (52)

可用参数  (1)

可用参数列表:

数据表示  (8)

"MessageSummary"  (1)

获取邮件信息摘要:

"MessageElements"  (1)

将信息作为 Association 导入:

"FullMessageElements"  (1)

导入完整信息:

导入一封邮件的指定参数:

"Subject"  (1)

从 EML 文件提取信息标题:

"Body"  (1)

导入信息正文:

"Plaintext"  (1)

将信息以原始网络信息格式导入:

显示来自纯文本的有趣片段:

"BodyPreview"  (2)

导入新信息内容的摘要:

"BodyPreview" 提取并摘要信息的新内容:

与完整信息内容进行比较:

内容查询  (2)

"NewBodyContent"  (1)

从信息提取新的未引用内容:

将提取的内容与原始正文进行对比:

"QuotedContent"  (1)

从信息提取引用的内容:

将提取内容与原始正文进行比较:

邮件地址标题参数  (19)

"From"  (1)

导入发信人的姓名和邮件地址:

"FromName"  (1)

导入发信人的全名:

"FromAddress"  (1)

导入发信人的电子邮件地址:

"ToList"  (1)

导入收信人姓名和地址的列表:

"ToAddressList"  (1)

导入收信人地址的列表:

"ToNameList"  (1)

导入收信人的姓名列表:

"CcList"  (1)

导入抄送的收信人的姓名和地址列表:

"CcAddressList"  (1)

导入抄送的收信人的地址:

"CcNameList"  (1)

导入抄送人姓名列表:

"BccList"  (1)

导入隐藏收信人姓名和地址列表:

"BccAddressList"  (1)

导入隐藏收信人地址列表:

"BccNameList"  (1)

导入隐藏收信人姓名列表:

"ReturnPath"  (1)

导入返回路径:

"ReplyToList"  (1)

导入回信名称和地址列表:

"ReplyToAddressList"  (1)

导入回信地址列表:

"ReplyToNameList"  (1)

导入回信名称列表:

"MessageID"  (1)

提取信息 ID:

"ReplyToMessageID"  (1)

提取回信信息的 ID:

"ReferenceMessageIDList"  (1)

提取引用消息的 ID:

通用标题参数  (4)

"HeaderString"  (1)

将信息的完整邮件标题作为字符串导入:

"HeaderRules"  (1)

将信息标题作为规则列表导入:

"CharacterEncoding"  (1)

导入信息的字符编码:

"ContentType"  (1)

导入邮件本文的 MIME 内容类型:

高级标题参数  (11)

"Precedence"  (1)

导入声明的邮件优先级:

"ReturnReceiptRequested"  (1)

导入任何返回的收信人地址:

"DeliveryChainHostnames"  (1)

导入发送链的主机名称:

"DeliveryChainRecords"  (1)

将发送链记录作为 Association 导入:

"OriginatingMailClient"  (1)

确认发送信息的邮件客户端:

"OriginatingIPAddress"  (1)

导入发送信息的机器的 IP 地址:

"OriginatingHostname"  (1)

导入发送信息的机器的主机名称:

"OriginatingDate"  (1)

导入发送邮件的日期和时间:

"OriginatingTimezone"  (1)

从邮件标题导入客户端时区:

"ServerOriginatingDate"  (1)

导入原服务器的日期和时间:

"ServerOriginatingTimezone"  (1)

导入原服务器的时区:

附件参数  (7)

"HasAttachments"  (1)

确定一封消息有附件:

"AttachmentNames"  (1)

获取任何附件的文件名称:

"AttachmentList"  (1)

将附件作为规则列表导入:

"AttachmentSummaries"  (1)

获取邮件信息中的附件摘要:

"AttachmentData"  (1)

从信息导入原始附件数据:

"AttachmentDecodedData"  (1)

从信息中导入已解码的附件数据:

"AttachmentDetails"  (1)

从信息中导入附件和详情:

导入选项  (3)

"AttachmentRules"  (3)

导入 WAV 文件作为 "Length" 参数:

不导入任何 GIF 图像:

指定控制 GIF 图像导入的纯函数: