Python读取自己的邮箱中第一封未读邮件的发件人,接收邮件的日期,主题,然后将读取状态变为未读
1条回答 默认 最新
关注
不知道你这个问题是否已经解决, 如果还没有解决的话:- 这篇博客: Python连接Outlook读取邮件和发送邮件中的 读取邮件 部分也许能够解决你的问题。
- 以下回答由chatgpt基于相关博客总结生成:
先安装pywin32库,使用以下命令进行安装:
pip install pywin32
然后,使用以下代码来读取未读邮件信息并标记为已读:
import win32com.client # 连接到Outlook应用程序 outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI") # 获取收件箱文件夹 inbox = outlook.GetDefaultFolder(6) # 获取未读邮件 unread = inbox.Items.Restrict("[Unread] = True") # 如果存在未读邮件 if unread.Count > 0: # 获取第一封未读邮件 mail = unread.GetFirst() # 获取发件人、接收日期和主题 sender = mail.SenderName received_date = mail.ReceivedTime subject = mail.Subject # 标记邮件为已读 mail.UnRead = False # 保存邮件更改 mail.Save() print("发件人:", sender) print("接收日期:", received_date) print("主题:", subject) else: print("没有未读邮件")
以上代码通过pywin32库连接到Outlook应用程序,并获取收件箱文件夹。然后,使用
Restrict
方法过滤所有未读邮件。如果存在未读邮件,获取第一封未读邮件的发件人、接收日期和主题,并将其状态从未读变为已读。最后,打印出获取的邮件信息。请注意,该代码只能读取默认邮箱的收件箱。如果需要读取其他文件夹或其他Outlook账户的邮件,请相应地修改代码。
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^解决 无用评论 打赏 举报
悬赏问题
- ¥15 from seleniumwire import webdriver 在抓取http://链接的时候会自动转https://这个怎么解决
- ¥15 hive直连数据库模式插入mysql表数据失败(相关搜索:数据库)
- ¥30 不会,学习,有偿解答
- ¥15 SQL查询语句报错(检查)
- ¥15 此表中公式应该怎么写
- ¥15 求HI-TECH PICC 9.50 PL3安装包
- ¥15 下载ctorch报错,求解
- ¥15 如何入门学习c语言,单片机
- ¥15 idea 编辑语言的选择
- ¥15 Windows下部署Asmjit