【发布时间】:2018-04-14 05:51:46
【问题描述】:
我正在尝试在 gmail 中创建消息并将其保存到草稿,但没有任何反应。
import time
import random
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import imaplib
def save_draft(email_to, body, login, password, image):
msg = MIMEMultipart("alternative")
msg.set_charset("utf-8")
msg.attach(MIMEText(body, "plain", "utf-8"))
msg['Subject'] = SUBJECT
msg['From'] = login
msg['To'] = email_to
with open(image, 'rb') as f:
part = MIMEApplication(
f.read(),
Name=image
)
part['Content-Disposition'] = 'attachment; filename={}'.format(IMAGE)
msg.attach(part)
imap = imaplib.IMAP4_SSL("imap.gmail.com", 993)
imap.login(login, password)
imap.select('[Gmail]/Drafts')
now = imaplib.Time2Internaldate(time.time())
imap.append('[Gmail]/Drafts',
'',
now,
msg.as_bytes())
imap.logout()
当我将 msg.as_bytes() 更改为 msg.as_string() 时,出现以下错误:
TypeError: cannot use a bytes pattern on a string-like object
【问题讨论】:
-
你在使用 Python 3 吗?
-
@ElisByberi,是的
标签: python email gmail gmail-imap imaplib