Я пытаюсь отправить Outlook письмо через Python. Я импортирую некоторые данные из файлов Excel, используя dataframe, и после некоторой фильтрации отправляю их туда, где находится тело письма:
body = '<html><body>'+df.to_html()+'</body></html>'
Я получаю таблицу, но ячейки не выровнены. Я не могу использовать justify='left/write'
, поскольку хочу, чтобы ячейки были выровнены по центру, а не только заголовки столбцов. Я использовал стили, но они тоже не работали:
df.style.set_properties(subset=df.columns,**{'width':'10em', 'text-align':'center'})\
Я тоже это пробовал, и это не сработало.
p=HTML(df.to_html(classes= 'table text-align:center'))
После просмотра похожих проблем я нашел другое решение:
s = df.style.set_properties(**{'text-align': 'center'})
s.render()
Однако из-за этого исчезает border
таблицы. Так что я изменил ее:
s = df.style.set_properties(**{'text-align': 'center','border-color':'Black','border-width':'thin','border-style':'dotted'})
Это дает border
клеткам. Но похоже, что each cell
внутри индивидуума textbox,
, а не table
. Как мне это сделать?
Окончательный результат выглядит так: