python获取邮件附件名称并标明日期(v20211109)

# python获取邮件附件名称并标明日期(v20211109)
import email.header
import pathlib
import calendar
print("输入年份如:2021")
folder="d:\\"+input()
# print(folder)
txt_data = ""
p = pathlib.Path(folder).rglob("*")
for i in p:
    fp = open(i, "r")
    msg = email.message_from_file(fp)
    # 以下提取邮件日期并格式化
    date = msg.get("Date")
    y = str(date[11:16])
    y = y.replace(" ", "")  # 清除空格
    m = date[7:11]
    m = m.replace(" ", "")
    m = list(calendar.month_abbr).index(m)  # 英文月份转数字
    m = str(m)
    if len(m) == 1:
        m = "0" + m
    d = str(date[4:7])
    d = d.replace(" ", "")
    if len(d) == 1:
        d = "0" + d
    ymd = y + m + d  # 定义年月日格式
    # 以下解析附件名称
    for part in msg.walk():
        filename = part.get_filename()
        if filename:
            s = filename
            if 'UTF-8' in s or 'utf-8' in s:
                for data, encoding in email.header.decode_header(s):
                    data = data.decode()
                    txt_data += ymd + data + "\n"
            else:
                txt_data += ymd + s + "\n"
fp = open("d:\\txt_data.txt", "w", encoding="utf-8")
fp.write(txt_data)
fp.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值