看起来很容易
From
To
Subject
等通过
import email
b = email.message_from_string(a)
bbb = b['from']
ccc = b['to']
假设这"a"
是原始电子邮件字符串,看起来像这样。
a = """From root@a1.local.tld Thu Jul 25 19:28:59 2013
Received: from a1.local.tld (localhost [127.0.0.1])
by a1.local.tld (8.14.4/8.14.4) with ESMTP id r6Q2SxeQ003866
for <ooo@a1.local.tld>; Thu, 25 Jul 2013 19:28:59 -0700
Received: (from root@localhost)
by a1.local.tld (8.14.4/8.14.4/Submit) id r6Q2Sxbh003865;
Thu, 25 Jul 2013 19:28:59 -0700
From: root@a1.local.tld
Subject: oooooooooooooooo
To: ooo@a1.local.tld
Cc:
X-Originating-IP: 192.168.15.127
X-Mailer: Webmin 1.420
Message-Id: <1374805739.3861@a1>
Date: Thu, 25 Jul 2013 19:28:59 -0700 (PDT)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="bound1374805739"
This is a multi-part message in MIME format.
--bound1374805739
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
ooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooo
--bound1374805739--"""
问题
您如何Body
通过python获取此电子邮件的?
到目前为止,这是我所知道的唯一代码,但我尚未对其进行测试。
if email.is_multipart():
for part in email.get_payload():
print part.get_payload()
else:
print email.get_payload()
这是正确的方法吗?
或者也许有一些更简单的事情,例如…
import email
b = email.message_from_string(a)
bbb = b['body']
?
使用Message.get_payload
b = email.message_from_string(a)
if b.is_multipart():
for payload in b.get_payload():
# if payload.is_multipart(): ...
print payload.get_payload()
else:
print b.get_payload()
我能够通过IMAP连接到Gmail并进行解析,但是在电子邮件正文中,我获得了Gmail特定的内容,例如
我有一个gmail帐户链接到我的域名帐户。 AWS SES将向我的S3存储桶发送消息。从那里,SNS将把原始格式的信息转发到我的gmail地址。 如何将原始邮件自动转换为标准电子邮件格式?
问题内容: 我正在编写一个Python脚本来处理Procmail返回的电子邮件。如该问题中所建议,我正在使用以下Procmail配置: 我的process_mail.py脚本正在通过stdin接收电子邮件,如下所示: 我正在尝试以这种方式解析消息: 我想获取诸如“发件人”,“收件人”和“主题”之类的消息字段。但是,消息对象不包含任何这些字段。 我究竟做错了什么? 问题答案: 您必须确保这些行不会意
问题内容: 我目前正在使用从服务器获取电子邮件并处理内容和附件的方法。 我想以状态/错误消息回复这些消息,并链接到我的网站上生成的结果内容(如果可以处理)。这应包括原始消息,但应删除所有附件(附件很大),最好仅用其文件名/大小替换它们。 由于我已经遍历了MIME消息部分,因此我假设需要做的是构建一个包含原始消息副本的新MIME消息树,并删除/替换附件节点。 在我走这条路之前,我希望有人能给我一些提
我有Microsoft Exchange: 有办法做到这一点吗?要通读原始电子邮件信息,查看回复者是谁并转发到该电子邮件地址? 如果我们不能将其作为宏来完成,那么我们是否可以将发送到:mail@domain.com的所有邮件转发到脚本中,并让脚本处理解析呢?
问题内容: 是否有人熟悉Java库,该库有助于解析以下电子邮件的字段(日期,主题,从,到)? 问题答案: JavaMail是一个Oracle库,它在javax.mail软件包中提供邮件服务和与邮件相关的服务(例如解析常规邮件和MIME邮件)。另外,Apache有一个用于处理邮件的Commons Email 库。 在JavaMail API中,解析包含电子邮件消息的字符串(可能是或可能不是明确的MI