擅长:python、mysql、java
<p>(我刚刚用我的Gmail帐户尝试过这个方法。)问题不在于HTML邮件,而是你的邮件是MIME多部分的,并且你正在打印完整的字符串。这是因为电子邮件基本上是纯文本格式(如前所述);当人们想在电子邮件中发送丰富的内容时,他们提出了MIME,这是一种在不修改电子邮件标准的情况下做到这一点的方法。当您<code>print mail</code>时,您将打印完整的MIME消息,并对其进行编码,以便将其作为电子邮件发送。你想提取有效载荷。</p>
<p>但是——你已经完成了所有的艰苦工作!只需获取解析的<code>email.message.Message</code>实例的有效负载:</p>
<pre><code>mail.get_payload()[ 0 ].get_payload()
</code></pre>
<p>(注意:我不得不为Gmail收件箱中的第一条消息执行两次此操作,因为它被编码为mimultipart,但只有一个leaf。YMMV.)</p>