使用win32com发送包含对象作为正文的电子邮件

时间:2017-05-17 15:16:20

标签: python pywin32 win32com prettytable

我正在尝试使用win32com发送电子邮件并将对象作为正文,例如:

outlook = win32com.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'receiver@email.com'
mail.Subject = 'subject of email'
mail.HtmlBody = table
mail.send

其中:

table = PrettyTable(['Header1', 'Header2'])
table.add_row(['row1col1', 'row1col2'])

但是,我收到以下错误消息:

TypeError: Objects for SAFEARRAYS must be sequences (of sequences), or a buffer object.

我试图将table object的字符串作为table.get_string()以及str(table)。在这两种情况下,整个table object在一行上打印为string(它会丢失table格式)

编辑:

如果我发送table作为电子邮件正文,我可以通过电子邮件发送table.get_html_string()但是,我失去了所有的边框,这很好..但是不是很好.. 。

第二次编辑:

PrettyTable提供了一个用于在Python中打印表的API,并最终返回一个对象。

基本上,我正在尝试获取该对象(当我调用print table时,我会找回格式正确的表)并将其转储到电子邮件中

0 个答案:

没有答案
相关问题