python下有个工具是可以对eml文件进行格式化的,介绍在这里

https://pypi.python.org/pypi/eml-parser

首先要安装包,如果你设置了全局环境变量的话,只需要cmd下执行就可以,如果没有设置全局变量,首先要切换到你python的安装目录,然后再切换到scripts目录,执行

pip install eml-parser

当你看到这个提示时,说明安装成功

Successfully installed cchardet-2.1.1 eml-parser-1.8 file-magic-0.3.0 python-dateutil-2.6.1 six-1.11.0 typing-3.6.4

这个时候,可以来试验一下是否可用。发现报错,于是到项目地址下载源码包查看,发现支持的版本有

classifiers=['Development Status :: 5 - Production/Stable',

'License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)',

'Intended Audience :: Developers',

'Operating System :: OS Independent',

'Programming Language :: Python :: 3.4',

'Programming Language :: Python :: 3.5',

'Programming Language :: Python :: 3.6',

'Programming Language :: Python :: Implementation :: CPython',

'Topic :: Communications :: Email'

],

重新下载正确版本,重复以上步骤,重复以上步骤后,我发现依然报错,官方提示是OSX系统才需要安装libmagic,后来我在python3.6.0环境下,先后安装python-magic和libmagic,再安装eml-parser, 执行import eml_parser才没有报错,那下面来实验一下是否可用

import eml_parser

import json

import datetime

def json_serial(obj):

if isinstance(obj, datetime.datetime):

serial = obj.isoformat()

return serial

with open('t.eml', 'rb') as fhdl:

raw_email = fhdl.read()

parsed_eml = eml_parser.eml_parser.decode_email_b(raw_email)

print(json.dumps(parsed_eml, default=json_serial))

成功输出json格式化后的eml文件数据

python eml解析_使用 python eml-parser 对 eml文件进行格式化相关推荐

  1. python快速排序解析_快速排序python实现总结

    算法 数据结构 快速排序python实现总结 背景:数据结构与算法是IT相关的工程师一直以来的基础考察重点,很多经典书籍都是用c++或者java来实现,出于对python编码效率的喜爱,于是取sear ...

  2. python xmlns 解析_使用python读取标记中包含xmlns的XML文件

    我试图从xml文件中读取一个元素来添加新元素. 我试图找到的标签包含xmlns. 它看起来像这样: 我的python代码如下所示: import xml.etree.ElementTree as xm ...

  3. python天天向上解析_用Python编程帮你验证“好好学习,天天向上”的重要性!

    首先,在这里提一下这个被反复说起无数遍的问题: 一年365天,每天进步1‰,累计进步多少呢? 一年365天,每天退步1‰,累计退步多少呢? 这个问题如果作为数学问题是很简单的,我们先以千分之一为例,保 ...

  4. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

  5. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  6. python 日期解析_如何在Python中解析ISO 8601格式的日期?

    python 日期解析 Python provides a datetime standard library which introduces datetime.isoformat(). As pe ...

  7. python 参数封装_扩展Python模块系列(三)----参数解析与结果封装

    在上一节中,通过一个简单的例子介绍了C语言扩展Python内建模块的整体流程,从本节开始讲开始深入讨论一些细节问题,在细节讨论中从始至终都会涉及[引用计数]的问题.首先讨论C语言封装的Python函数 ...

  8. python 网页编程_通过Python编程检索网页

    python 网页编程 The internet and the World Wide Web (WWW), is probably the most prominent source of info ...

  9. python图片顶端_用python进行图片整理

    图片整理的基础是区分拍摄图片和表情包.截图之类的其他图片.在此,我们使用exif信息对拍摄图片和其他图片进行区分. 对exif信息进行一下简单介绍. Exif 可交换图像文件格式(英语:Exchang ...

  10. python 创意项目_针对python开发人员的10个很棒的python项目创意

    python 创意项目 The joy of coding Python should be in seeing short, concise, readable classes that expre ...

最新文章

  1. linux文件类型为ext4怎么扩展,如何扩展ext4分区和文件系统?
  2. hfss matlab联合仿真_一文搞定matlab 与 STK 联合调试仿真环境配置(文末附软件下载链接)...
  3. linux开发工具之gcc
  4. Python 3.6出现报错解决方案:No Python 3.6 installation was detected,无法卸载Python
  5. 一次性获取多个oracle序列的值,实现关联表多数据的批量insert
  6. python文本进度条代码解释_python动态文本进度条的实例代码
  7. 程序员被公司开除,隔阵子领导命令回前公司讲解代码,网友直呼:关我嘛事?
  8. redis学习-03
  9. gsm模块 java 录音_深入详解Android GSM驱动模块
  10. 【SQL】实验四 数据库的安全性、数据库备份、数据库恢复等机制
  11. Julia: Atom 来了!如何在Atom中操作Julia?
  12. Ubuntu源码安装gcc-10
  13. 云存储云计算选择开源还是商业版
  14. 状态良好(恢复分区)空间的删除的方法
  15. Docker镜像分层原理-联合文件系统(UnionFS)
  16. 2021年金属非金属矿山(地下矿山)安全管理人员最新解析及金属非金属矿山(地下矿山)安全管理人员证考试
  17. 常见计算机硬件故障维修方法,电脑硬件有哪些常见问题 电脑硬件常见问题维修技巧【详解】...
  18. 你对MySQL中的索引了解多少?
  19. IntelliJ idea (最新版)激活方法
  20. 《精彩网址大全——工商经济科学教育卷》前言

热门文章

  1. Onedrive 1T|5T 网盘获取
  2. Steven N.S.Cheung之婚姻合约文章简评
  3. java8时间转换函数学习,教你脱离jdf转换的痛苦
  4. 国内景色最震撼的9座雪山
  5. 苹果4如何添加时间插件_iPhone如何添加输入法?苹果手机怎样添加手写输入?...
  6. Kobe -接小球游戏
  7. java pgm_如何用Java读取PGM图像?
  8. B站顶流何同学对话苹果CEO库克,iPhone某些设计想法源自中国
  9. 【大学生软件测试基础】薪资管理制度 - 因果图 - 测试用例
  10. 智能指针的标准之争:Boost vs. Loki [转]