如何在suds工作完成后向自己发送电子邮件通知?

时间:2014-11-17 20:42:05

标签: python email suds

我正在学习在python脚本中使用suds将SQL查询发送到数据库。我希望能够在查询作业完成后向自己发送电子邮件(它有一个作业ID,所以我可以检查其状态)。我该怎么做?

4 个答案:

答案 0 :(得分:1)

这是您通过python发送电子邮件的方法,只需填写空白并将其输入您的代码:

import smtplib

content = ("Content to send")

mail = smtplib.SMTP('smtp.gmail.com',587)

mail.ehlo()

mail.starttls()

mail.login('your_email@gmail.com','123your_password')

mail.sendmail('your_email@gmail.com','destination_email@gmail.com',content) 

mail.close()

print("Sent")

(你不必使用gmail,因为大多数地址仍然可以通过gmail smtp工作)

答案 1 :(得分:0)

如果不需要电子邮件,您也可以向自己发送聊天消息。

实现这一目标的两个项目:

答案 2 :(得分:0)

我遇到了同样的问题,因此我决定构建一个软件包Notif,以便根据需要发送通知。我还添加了一个装饰器,以在脚本失败时发送通知。

以下是我的软件包notif发送电子邮件通知的示例:

sender_email = "my_email"
sender_login_credential = "my_password"
destination_email = sender_email
smtp_server = smtplib.SMTP('smtp.gmail.com',587)    
notif = EmailNotificator(sender_email, sender_login_credential,
                               destination_email, smtp_server)
notif.send_notification(subject="subject", text="text")

在此处查看doc

答案 3 :(得分:0)

我刚刚为此编写了一个Python装饰器。您可以在一行中实现它。

https://github.com/Wenzhi-Ding/py_reminder

from py_reminder import monitor

@monitor('SQL Query of xxx')
def query(sql):
    ...send your query...

query()

此功能完成/或遇到错误后,您将收到一封包含一些简短信息的电子邮件通知。