EmlParse:一款超轻量级的批量解析EML格式电子邮件的工具

工具特点

1、绿色纯天然,无任何依赖库,文件大小不到150K
2、可批量解析EML格式的电子邮件;
3、可提取EML文件中的正文附件到指定目录;
4、可生成HTML格式的邮件列表清单,方便用户进行离线阅读;
5、可生成JSON格式的邮件列表清单,方便用户进行二次开发;
6、基于命令行参数的执行程序,可方便集成到第三方程序中使用;
7、无需安装任何客户端软件即可阅读邮件;

下载地址(EmlParse.zip)

使用方法

EmlParse EML_PATHFILE [-folder] -o OUT_FOLD

EML_PATHFILE:EML格式的文件路径,如果指定-folder,则该参数是一个目录,用于导出整个目录中的EML文件。
-o:用于指定EML解析后输出的目录,如果不指定,则导出到当前目录下。

1、将指定EML格式文件解析到指定目录

EmlParse c:/temp.eml -o c:/mailout

将C盘的temp.eml文件解析到C盘的mailout目录中。

2、将指定目录中的EML格式文件解析到指定目录

EmlParse c:/emlfolder -folder -o c:/mailout
-folder参数用于指定导出的是目录。

将C盘的emlfolder中所有EML格式文件解析到C盘的mailout目录中。

输出内容

1、邮件正文和附件
该工具会在指定的输出目录(-o指定的参数)中创建一个与邮件文件名相同的子目录,并将该邮件的正文附件解析到该子目录中。邮件的正文文件名以"body"作为前缀,通常包括两个正文,一个是HTML格式,一个是纯文本的txt格式。附件文件以实际的文件名进行保存。除上述文件外,电子邮件中还会包含一些内嵌资源文件,比如图片,这些内嵌资源主要在HTML格式的正文中显示。

2、邮件清单(HTML格式)

该工具会在指定目录中生成一个maillist.html的文件,该文件包含导出的邮件的概要信息,包括:发件人、主题、发送日期、以及附件清单,该列表以日期的降序排列。如下图:

点击主题可查看邮件具体内容。

3、邮件清单(JSON格式)

该工具除生成HTML文件外,还会生成一个同名的JSON格式文件maillist.json,JSON格式如下:

{
	"list": [{
		"file": "电子邮件文件名.eml",
		"from": "发件人",
		"subject": "邮件主题",
		"to": "收件人"
		"cc": "抄送人",
		"date": "Wed, 19 Oct 2016 11:19:46 +0800 (CST)",
		"time": 1476847186,
		"html": "邮件正文文件.html",
		"text": "邮件正文文件.txt",
		"attachment": ["附件1.pptx", "附件2.doc"],
	}]
}

【字段说明】
list: 对象数组,里面是所有邮件解析后的列表,详情如下;
file: 解析的电子邮件文件名;
from: 发件人的电子邮件地址;
to: 收件人电子邮件地址,如果存在多个,则会用","进行分割;
cc: 抄送人电子邮件地址,如果存在多个,则会用","进行分割;
date: 邮件发送日期,字符串格式;
time: 邮件发送日期,整形格式;
html: HTML格式的邮件正文文件名称;
text: TXT格式的邮件正文文件名称;
attachment: 附件文件数组;

第三方用户可以根据该文件编写自己的邮件列表显示界面,并进行邮件管理等工作。

如何接收和解析邮件可参考如下文章

POP3:基于命令行的电子邮件(EMail)在线查看和批量下载工具

POP3协议(电子邮件邮局协议)中UIDL和TOP命令在实际使用中的作用

如何解析EML(邮件)格式的文件以及一款小巧的EML邮件阅读工具

posted @ 2022-04-19 10:27  一只会铲史的猫  阅读(2048)  评论(0编辑  收藏  举报