У меня есть файл output.txt, в который я хочу отправить его содержимое в виде тела сообщения электронной почты.
1.я хочу удалить определенные строки из содержимого (не удалять из самого файла)
2.Я хочу иметь возможность преобразовать его в HTML и написать некоторые строки определенного размера и, возможно, даже цвета.
У меня есть рабочий скрипт, который отправляет почту.Есть некоторые проблемы:
Я не могу удалить определенную строку при использовании file.read ().при попытке readlines () тип является списком, а тело письма портится (соединение не работает в списке с байтовым типом)
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)