Python批量解析EML文件,获取邮件头信息以及附件并写入excel

本文介绍如何使用Python解析EML文件,提取邮件头信息(发件人、收件人、抄送人、主题、时间)及附件,并利用openpyxl将这些信息保存到Excel表格中。虽然遇到正文中的base64字段处理和图片格式问题,但推荐结合email库进行处理。
摘要由CSDN通过智能技术生成

获取EML邮件头信息,包括发件人,收件人,抄送人,邮件主题,时间,附件等信息。

1. 由于数据量较大,不建议使用xlrd,xlwt,改为使用openpyxl

2. 使用格式:python    xxx.py(数据源) (输出源)

3. 针对邮件正文正则截取base64字段,编码后输出暂时无法解决图片及部分格式问题

4. 建议搭配官方email库食用更佳~

 

 

我太菜了~ 

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
from typing import Any

import os
import sys
import re
import openpyxl
import base64
from openpyxl import load_workbook
import email
from email.parser import Parser

workbook = load_workbook('result222.xlsx')
sheet1 = workbook.create_sheet('result')

def decode_str(s):  # 字符编码转换
    value, charset = email.header.decode_header(s)[0]
    if charset:
        value = value.decode(charset)
    return value


def get_annex_filename(name):
    h = email.header.Header(name)
    dh = email.header.decode_header(h)  # 对附件名称进
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值