
imap_body 함수를 사용하여 이메일 본문을 읽어오기 위해 제공된 코드는 올바르지 않습니다.
이 문제는 `email.message_from_bytes()` 함수가 이메일 메시지의 본문을 읽어오기 위해 사용되는 부분에서 발생합니다. 이 함수는 이메일 메시지의 본문을 읽어오기 위해 사용되는 부분에서 발생합니다.
이 문제를 해결하기 위해, 이메일 메시지의 본문을 읽어오기 위해 `email.message_from_bytes()` 함수 대신 `email.message_from_string()` 함수를 사용할 수 있습니다.
또한, 이메일 메시지의 본문을 읽어오기 위해 `part.get_content_type()` 함수 대신 `part.get_content_subtype()` 함수를 사용할 수 있습니다.
이러한 변경을 통해, 이메일 본문을 읽어오기 위해 제공된 코드는 올바르게 작동할 수 있습니다.
다음은 올바른 코드 예제입니다.
#hostingforum.kr
python
import imaplib
import email
mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('내 이메일', '비밀번호')
mail.select('inbox')
status, messages = mail.search(None, 'ALL')
for num in messages[0].split():
status, data = mail.fetch(num, '(RFC822)')
raw_email = data[0][1]
email_message = email.message_from_bytes(raw_email)
if email_message.is_multipart():
for part in email_message.walk():
if part.get_content_subtype() == 'plain':
body = part.get_payload(decode=True)
print(body.decode())
else:
body = email_message.get_payload(decode=True)
print(body.decode())
이러한 변경을 통해, 이메일 본문을 읽어오기 위해 제공된 코드는 올바르게 작동할 수 있습니다.
2025-05-23 19:45