Отправить данные фрейма данных pandas в формате html по электронной почте
Я хочу отправить данные фрейма данных pandas в виде HTML-сообщения. На основе этой post я мог бы создать html с фреймом данных. Код
import pandas as pd
import numpy as np
HEADER = '''
<html>
<head>
</head>
<body>
'''
FOOTER = '''
</body>
</html>
'''
df = pd.DataFrame([[1.1, 1.1, 1.1, 2.6, 2.5, 3.4,2.6,2.6,3.4,3.4,2.6,1.1,1.1,3.3], list('AAABBBBABCBDDD')]).T
with open('test.html', 'w') as f:
f.write(HEADER)
f.write(df.to_html(classes='df'))
f.write(FOOTER)
теперь я хочу отправить это как html-письмо. Я пытался!--6-->этой. Не можете понять, как прикрепить html-файл?
2 ответов
Pandas имеет функцию для этого: http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_html.html
данный HTML код для таблицы, после чего вы можете вставить его в письмо с:
df = DataFrame(data)
email = " some html {df} lah lah"
email = email.format(df=df.to_html())
наконец-то нашла. Именно так это и должно быть сделано.
filename = "test.html"
f = file(filename)
attachment = MIMEText(f.read(),'html')
msg.attach(attachment)