0

私は、ユーザーが携帯電話からテキスト メッセージを送信し、Google App Engine を使用して応答を受け取ることができる Web アプリに取り組んでいます。当然のことながら、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_Recoming_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

.strip() を追加して、plaintext_body.strip() をチェックするときにスペース/改行などを削除することもできます

于 2013-09-10T20:58:19.147 に答える