我在Python for Outlook中创建了一个自动电子邮件发件人。它工作正常,但我想知道是否可以保存它在发送文件夹中发送的电子邮件。我确定有,但我不确定从哪里开始。任何帮助将不胜感激。
这是在Python 3.6
中==
from tkinter import *
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
import csv
import time
import warnings
root = Tk()
root.geometry('200x200')
email_label = Label(root, text="Enter your email")
email_label.pack()
username = Entry(root, width = 30)
username.pack()
password_label = Label(root, text="Enter your password")
password_label.pack()
password = Entry(root, show="*", width = 30)
password.pack()
def add_var():
user_name = username.get()
pass_word = password.get()
with open("emailtk.csv") as f:
try:
reader = csv.reader(f)
for row in reader:
time.sleep(3)
address = row[0]
first_name = row[1]
last_name = row[2]
name = first_name+' '+last_name
company = row[4]
msg = MIMEMultipart()
msg["To"] = address
msg["From"] = user_name
msg["Subject"] = subject
print("Will now send an email to %s at %s at %s" % (name, company, address))
msgText = MIMEText("""
Hello %s!
""" % (name), 'html')
msg.attach(msgText) # Added, and edited the previous line
time.sleep(5)
smtp = smtplib.SMTP('Outlook.com', 25)
smtp.ehlo()
smtp.starttls()
smtp.login(user_name,pass_word)
smtp.sendmail(user_name, address, msg.as_string())
print("email sent")
print("======================")
print()
smtp.quit()
答案 0 :(得分:0)
通过SMTP发送不会将邮件复制到“已发送邮件”文件夹中。您将需要使用Outlook对象模型(通过win32com)或EWS(如果是Exchange Server)。