在 python 中仅提取电子邮件标头
- 作者: 蒋-校长
- 来源: 51数据库
- 2022-11-30
问题描述
我在尝试在 python 中提取所有电子邮件标头时遇到了一些问题.我知道如何获取我正在寻找的那些,但我想保存所有标题,但我不知道该怎么做.
I'm having some issues trying to extract all the email headers in python. I know how to get the ones I'm looking for but I want to save all the headers and I'm not sure how to do that.
我已将其加载到电子邮件对象中
I have it loaded into a email object
import email f = open(kwargs['opt_emailfile']) msg = email.message_from_file(f) f.close()
所以我可以得到
msg['To'] msg['From']
但我想要所有的标题
解决方案
感谢回答,这是我所做的
Here is what I did thanks to the answer
f = open(kwargs['opt_emailfile'])
msg = email.message_from_file(f)
f.close()
parser = email.parser.HeaderParser()
headers = parser.parsestr(msg.as_string())
for h in headers.items():
print h
推荐答案
使用 HeaderParser 或许:
from email.parser import HeaderParser parser = HeaderParser() h = parser.parsestr(email) print h.keys()
我刚刚注意到您编辑了您的问题.您实际上可以在不使用 HeaderParser 的情况下从您所拥有的信息中获得相同的信息.例如headers.items() 将返回带有标题和相应值的 2 元组列表.
I just noticed you edited your question. You can actually get the same information from what you had without using HeaderParser. e.g. headers.items() will return list of 2-tuples with headers and corresponding values.
推荐阅读
热点文章
Discord.py(重写)on_member_update 无法正常工作
0
Discord.py 在 vc 中获取用户分钟数
0
discord.py 重写 |为我的命令出错
0
Discord.py rewrite 如何 DM 命令?
0
播放音频时,最后一部分被切断.如何解决这个问题?(discord.py)
0
在消息删除消息 Discord.py
0
如何使 discord.py 机器人私人/直接消息不是作者的人?
0
(Discord.py) 如何获取整个嵌入内容?
0
Discord bot 尽管获得了许可,但不能提及所有人
0
Discord.py discord.NotFound 异常
0
