我有一个output.txt,我想将其内容作为电子邮件正文发送。
1.i想从内容中删除特定行(而不是从文件本身中删除)
2.i希望能够将其转换为html并设计某些特定的行大小甚至颜色。
我有一个工作脚本来发送邮件。 有一些问题:
im在使用file.read()时无法删除特定行。 尝试readlines()时,类型是列表,电子邮件正文变得混乱。(join在字节类型的列表上不起作用)
import smtplib
import email.message
def send_email(subject, msg):
try:
server = smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.ehlo()
ID = 'XXXX'
PASSWORD = 'XXXXXXX'
email_reciever = 'XXXXXX'
server.login(ID, PASSWORD)
message = 'Subject:{} \n\n {}'.format(subject, msg)
server.sendmail(ID, email_reciever, message)
print('Succes')
except Exception as e:
# Print any error messages to stdout
print(e)
finally:
server.quit()
filename = r".\Reports\Report.txt"
with open(filename, "rb") as filename:
text = filename.read()
msg = email.message.Message()
msg.add_header('Content-Type', 'text/plain')
msg.set_payload(text)
subject = "Report"
send_email(subject, msg)