IMAP アカウントの受信トレイをチェックし、それらの電子メールを読み取り、特定の電子メールに返信する Python スクリプトを作成しています。ただし、セキュリティ上の理由から、電子メールの元の送信者が特定のドメインからのものであることを確認する必要があります。
email
ライブラリとそのmessage_from_string
関数を使用して、Python で電子メールを読んでいます。
msg = email.message_from_string(data[0][1])
これにより、 経由で送信者に簡単にアクセスできますmsg['from']
。いくつかのテストの後、これは一般的に形式であることがわかりましたが、形式John Doe <JohnDoe@example.com>
でもある可能性があると思いますJohnDoe@example.com
。
先ほど言ったように、送信者の電子メールのドメインがfoobar.net
. それを確認する最良の方法は何でしょうか?形式に関係なく電子メールを取り出すことができるように、正規表現を使用する必要msg['from']
がありますか? または、文字列を分割して@
から、次の 10 文字を確認する必要がありfoobar.net
ますか? まったく別の何か?