python下载.msg文件的附件
2024-10-21 20:42:35
.msg文件,outlook邮件的一种保存方式
方式一:使用win32com库,不过要安装outlook才行
import win32com.client
import os def get_attachments(file_dir, dst_dir):
"""
获取.msg文件内的附件
:param file_dir: .msg文件路径
:param dst_dir: 附件存放目录
:return: None
"""
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
msg = outlook.OpenSharedItem(file_dir)
'''
print(msg.SenderName)
print(msg.SenderEmailAddress)
print(msg.SentOn)
print(msg.To)
print(msg.CC)
print(msg.BCC)
print(msg.Subject)
print(msg.Body)
'''
count_attachments = msg.Attachments.Count
attachments = msg.Attachments
if count_attachments > 0:
# for item in range(count_attachments):
# print(msg.Attachments.Item(item + 1).Filename) # 循环输出附件名
for att in attachments:
att.SaveAsFile(os.path.join(dst_dir, att.FileName)) del outlook, msg # 释放资源
方式二:使用extract_msg库
import extract_msg file_name = r"E:\test\test_email.msg"
msg = extract_msg.Message(file_name)
"""
print(msg.subject)
print(msg.cc)
print(msg.bcc)
print(msg.sender)
print(msg.to)
print(msg.path)
print(msg.attachments)
print(msg.date)
print(msg.body)
print(msg.htmlBody)
"""
for attachment in msg.attachments:
attachment.save(customPath='E:/test')
最新文章
- js学习笔记9----时间操作
- Dapper学习笔记(4)-事务
- 转:Configure your eclipse for C++
- string find
- .net中对象序列化技术浅谈
- xml文件有误
- java.sql.SQLException: Io 异常: Connection reset
- js 获取当天23点59分59秒 时间戳 (最简单的方法)
- C#基础篇03
- 2016-3-6.16:43------------js开始
- 微信创建带参数二维码并加上logo
- HDU 2203 亲和串(KMP)
- jsp去除空行的web.xml配置
- Unity中的基础光照
- Linux - quota的举例说明
- SQLserver 获取当前时间
- 心路历程(一)-自学java两个月心得
- day16 python之匿名函数,递归函数
- 【原创】大数据基础之Logstash(3)应用之file解析(grok/ruby/kv)
- Xamarin Essentials教程陀螺仪Gyroscope