imaplibを使用して純粋なテキスト形式のpython電子メールを取得する方法が不思議です。 私がこれまで持っているもの:imaplibを使用してpython電子メールから純粋なテキストを取得する方法
from datetime import datetime
import imaplib ,email
IMAP_SERVER = 'imap.gmail.com'
EMAIL_ACCOUNT = "[email protected]"
PASSWORD = "password"
rv, data = M.search(None, "ALL")
if rv != 'OK':
print("No messages found!")
return
if data != ['']: # if not empty list means messages exist
for num in data[0].split():
rv, data = M.fetch(num, '(RFC822)') #(BODY[HEADER.FIELDS (SUBJECT FROM)])
if rv != 'OK':
print("ERROR getting message", num)
return
message = email.message_from_bytes(data[0][1])
text = ""
if message.is_multipart():
for payload in message.get_payload():
text = payload.get_payload()
else:
text = message.get_payload()
res = {
'From': email.utils.parseaddr(message['From'])[1],
'From name': email.utils.parseaddr(message['From'])[0],
'Time': datetime.fromtimestamp(email.utils.mktime_tz(email.utils.parsedate_tz(message['Date']))),
'To': message['To'],
'Subject': email.header.decode_header(message["Subject"])[0][0],
'Text': text
}
print(res['Text'])
else:
print("Nothing to work with.")
私はこの方法でそれを行う場合は、コードは動作しますが、私は出力として
<div dir="ltr">test 3 body</div>
を取得します。 純粋に「テスト3ボディ」を出す方法はありますか?
うわー、素敵!どうもありがとうございました!完璧に動作します(y) –