【发布时间】:2017-10-24 16:22:50
【问题描述】:
有没有什么方法可以使用 smtp 转发电子邮件(gmail 之类的 - 你知道......下面有额外的文字)? 这是我的一段代码:
def forward_email(email_id, email_to):
client, messages = get_original_email(email_id)
typ, data = client.fetch(messages[0].split(' ')[-1], '(RFC822)')
email_data = data[0][1]
message = email.message_from_string(email_data)
smtp = smtplib.SMTP(EMAIL_HOST, EMAIL_PORT)
smtp.ehlo()
smtp.starttls()
smtp.login(IMAP_LOGIN, IMAP_PASSWORD)
result = smtp.sendmail(email.utils.parseaddr(message['From']),
email_to, message.as_string())
smtp.quit()
return result
现在它不起作用,因为 message.as_string() 具有特殊的标头和其他未使用的信息。 我猜gmail阻止它是因为这个。
【问题讨论】:
-
基本上你想从 python 代码发送电子邮件吧?
-
您可以尝试清除标题信息然后强制重新创建。
标签: python email smtp gmail imaplib