0

我正在开发一个网络应用程序,用户可以通过手机发送短信并使用 Google App Engine 接收回复。当然,自 iOS 6 以来,iPhone 无法正确发送电子邮件地址。相反,他们会发送一封附有 .txt 文件的空白电子邮件。如何从电子邮件中提取和阅读此 .txt 文件?

目前我的代码如下所示:

def receive(self, message):
    plaintext_body = ''
    for plain in message.bodies('text/plain'):
        plaintext_body = plain[1].decode()

我正在考虑做一些事情,如果 plaintext_body 仍然为空,它会检查扩展名为 .txt 的文件并将其读入plaintext_body,但我对 Python 或务实地处理电子邮件不是很熟悉。

4

1 回答 1

1

如果消息是来自https://developers.google.com/appengine/docs/python/mail/#Python_Receiving_mail_in_Python的 InboundEmailMessage 实例, 它应该如下所示:

def receive(self, message):
    plaintext_body = ''
    for plain in message.bodies('text/plain'):
        plaintext_body = plain[1].decode()

    if not plaintext_body and hasattr(message, 'attachments'):
        for attachment in message.attachments:
            if attachment[0].endswith('.txt'):
                plaintext_body = attachment[1].decode()
                if plaintext_body:
                    break

您还可以在检查 plaintext_body.strip() 时添加 .strip() 以删除空格/换行符等

于 2013-09-10T20:58:19.147 回答