使用Python电子邮件库添加不需要的字符解析原始电子邮件的步骤如下:
import email
from email.header import decode_header
with open('path/to/raw_email.eml', 'rb') as file:
raw_email = file.read()
email_message = email.message_from_bytes(raw_email)
subject = email_message['Subject']
from_address = email.utils.parseaddr(email_message['From'])[1]
to_address = email.utils.parseaddr(email_message['To'])[1]
body = ""
if email_message.is_multipart():
for part in email_message.walk():
content_type = part.get_content_type()
if content_type == 'text/plain' or content_type == 'text/html':
charset = part.get_content_charset()
if charset is None:
charset = 'utf-8'
body = part.get_payload(decode=True).decode(charset)
break
else:
content_type = email_message.get_content_type()
if content_type == 'text/plain' or content_type == 'text/html':
charset = email_message.get_content_charset()
if charset is None:
charset = 'utf-8'
body = email_message.get_payload(decode=True).decode(charset)
print("主题:", subject)
print("发件人:", from_address)
print("收件人:", to_address)
print("正文:", body)
以上代码将解析原始电子邮件文件,并提取出主题、发件人、收件人和正文内容。你可以根据需要进一步处理这些信息。
对于电子邮件库的选择,Python提供了多个选择,其中较为常用的是email
库和imaplib
库。email
库用于解析和构建电子邮件,而imaplib
库用于与邮件服务器进行交互。
推荐的腾讯云相关产品:腾讯企业邮件(https://cloud.tencent.com/product/exmail)可以提供企业级电子邮件服务,包括邮件收发、联系人管理、日历等功能。
领取专属 10元无门槛券
手把手带您无忧上云