Отправить результат кадра данных по электронной почте Outlook

#python #html #dataframe #outlook #mailnotifier

Вопрос:

Я использую этот код для отправки результата фрейма данных (формат таблицы), который я создал с помощью адреса электронной почты Outlook ( другой адрес электронной почты, отличный от моего адреса), это своего рода электронное письмо с уведомлением о толчке, код отлично возвращает то, что я ищу ( формат таблицы в электронном письме), но проблема в том, что у меня 3 разных фрейма данных. Каждый раз , когда я отправляю уведомление по электронной почте, в нем используется только первый кадр данных в результате электронной почты, а остальные 2 кадра данных будут созданы в виде html-вложения и не будут отображаться в результате электронной почты. Вот мой код, что я должен изменить:

 import smtplib
import sys
# Log in to email account.
smtpObj = smtplib.SMTP('smtp-mail.outlook.com', 587)
smtpObj.ehlo()
smtpObj.starttls()
smtpObj.login( 'sender@outlook.com',password)

from email.mime.text import MIMEText
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
from smtplib import SMTP
import smtplib
recipients = ['receiver@outlook.com'] 
msg = MIMEMultipart()
msg['Subject'] = "Push Notifier"
msg['From'] = 'sender@outlook.com'
import sys
html = """This is an automatic email to inform you that you have wrong data in your dataframe1
<html>
  <head></head>
  <body>
    {0}
  </body>
</html>
""".format(dataframe1.to_html())

part1 = MIMEText(html, 'html')
msg.attach(part1)

smtpObj.sendmail(msg['From'], recipients , msg.as_string())

html = """This is an automatic email to inform you that you have wrong data in your dataframe2
<html>
  <head></head>
  <body>
    {0}
  </body>
</html>
""".format(dataframe2.to_html())

part1 = MIMEText(html, 'html')
msg.attach(part1)

smtpObj.sendmail(msg['From'], recipients , msg.as_string())