Python pywin32 outlook邮箱

Python pywin32 outlook邮箱

安装依赖

sh 复制代码
pip install pywin32

使用实例

python 复制代码
outlook = client.Dispatch("Outlook.Application").GetNamespace("MAPI")
inbox = outlook.GetDefaultFolder(6)  # 6表示收件箱

# 创建时间范围过滤器
end_time = dt.now()
start_time = end_time - timedelta(days=3)
# Restrict()过滤时间格式 %Y-%m-%d %H:%M %p必须带有%p,否则可能报错,或者没数据
start_str = start_time.strftime("%Y-%m-%d %H:%M %p")   
end_str = end_time.strftime("%Y-%m-%d %H:%M %p")
filter_str = f"[ReceivedTime] > '{start_str}' AND [ReceivedTime] < '{end_str}'"
# 通过时间过滤邮件
emails= inbox.Items.Restrict(filter_str)

for email in emails:
    # 邮件标题
    print(email.Subject)
    # 发送人
    print(email.SenderName)
    # 邮件内容(HTML格式)
    print(email.HTMLBody)
    # 邮件接收时间
    print(email.ReceivedTime)
    # 文件对象,包括附件,邮件中截图,图片等文件
    print(email.Attachments)
    # 邮件收件人(包括抄送人)信息对象
    for i in message.Recipients:
        print(i.Name)      # 收件人名称
        print(i.Resolved)	 # 
        print(i.Address)	# 收件人邮箱地址
        print(i.Type)     # 1:收件人,2:抄送人

    # 附件对象
    for attachment in email.Attachments:
        # attachment.FileName 文件名
        filename = str(attachment.FileName)
        suffix = os.path.splitext(filename)[1].strip(".")
        if filename.startswith('image') and suffix in ["png", "jpg"]: continue
        print(filename)
        dir_path = r'D:\test'
        filepath = os.path.join(dir_path, attachment.FileName)
        # attachment.SaveAsFile()保存文件到指定路径
        attachment.SaveAsFile(filepath)
相关推荐
IvanCodes4 小时前
Python 数据处理(十三):JSON、CSV 与数据序列化
开发语言·python
Patrick在香港5 小时前
Claude 工具调用返回空:8 次失败里只有 1 次状态码不对,其余全带 200
爬虫·python·api·claude·香港
Web3&Basketball5 小时前
CRM Agent 后训练实战:3 倍更少错误
python·架构·大模型·agent·推理
aramae5 小时前
MySQL复合查询(8)
java·c语言·开发语言·后端·算法
AIFQuant6 小时前
ETF行情API接入踩坑记:从报错到跑通的七个问题
python·金融·区块链·etf·基金
GPU实战笔记7 小时前
云端 Python 开发:JupyterLab 还是 VS Code Remote-SSH?
python·vs code·jupyterlab·remote-ssh·远程开发
狗狗狗狗狗乐啊8 小时前
搭一个 AI 对话工作台 AChat:从 0 到可用的完整记录(一)
python·react.js·ai编程
qq_2518364578 小时前
springboot vue3 开发实现 拼豆管理系统
java·开发语言·ai编程
白猫不黑8 小时前
Python实现简易Web弱口令爆破与防护方案
python·web安全·计算机·网络安全·黑客·信息安全·渗透测试
郑州光合科技余经理9 小时前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程