为什么traceback.print_exc为发送的电子邮件创建空白输出?

时间:2017-11-05 14:26:58

标签: python python-3.x email

msg值只显示空白邮件而不是电子邮件,而不是我想要发送的完整错误消息。我尝试了其他错误变体,包括:traceback.format_exc(),但电子邮件输出始终为空白。

msg = (traceback.print_exc())
server.sendmail(fromaddr, toaddrs, msg)

2 个答案:

答案 0 :(得分:1)

我仍然在寻找原因,但由于某种原因,第一行不接受邮件中的冒号:,一个丑陋的解决方法是替换它:

msg = traceback.format_exc().replace(':','=>',1) # only the first, to not alter the traceback
server.sendmail(fromaddr, toaddrs, msg)

答案 1 :(得分:0)

您可能需要类似traceback.format_exc()而不是print_exec。