python学习--使用QQ邮箱发送邮件代码实例

yipeiwu_com7年前Python基础

服务器计算数据有时需要大量的时间,使用程序发送一封邮件是一种免费便捷的通知方式,可以让我们及时收到程序中断或者程序运行完成的信息,而不用一直盯着屏幕看。以下以python为例写一个邮件发送程序:

import smtplib
from email.mime.text import MIMEText
from email.header import Header

class Mail(object):
  def __init__(self,user,token):
    self.host = "smtp.qq.com"  # qq邮箱服务器地址
    self.user = user
    self.token = token
    self.sender = "1477517404@qq.com"
    self.subject = "服务器通知"
    self.smtpObj = smtplib.SMTP()
    self.smtpObj.connect(self.host, 25)
    self.smtpObj.login(user,token)


  def generate_message(self,message):
    self.message = MIMEText(message,'plain','utf-8')
    self.message['From'] = Header('计算中心','utf-8')
    self.message['To'] = Header('电商所的同学们','utf-8')
    self.message['Subject'] = Header(self.subject, 'utf-8')

  def send_to(self,receiver):
    try:
      self.smtpObj.sendmail(self.sender, receiver, self.message.as_string())
      print("邮件发送成功")
    except smtplib.SMTPException:
      print("Error: 无法发送邮件")

在程序中的调用:

# -*- coding: <utf-8> -*-
from ServerEmail import Mail
if __name__ == "__main__":
  email = Mail("1477517404@qq.com","******")  # QQ邮箱的账号 和token,token是从QQ邮箱网站中获取的授权码
  email.generate_message("程序已经运行完成,请尽快查看实验结果")
  email.send_to("m18356410249@163.com")

效果:

以上所述是小编给大家介绍的python使用QQ邮箱发送邮件详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Python中pillow知识点学习

此系列意在记录于一些有趣的程序及对其的总结。 问题来源: https://github.com/Yixiaohan/show-me-the-code https://github.com...

pandas dataframe添加表格框线输出的方法

pandas dataframe添加表格框线输出的方法

将dataframe添加到texttable里面,实现格式化输出。 data=[{"name":"Amay","age":20,"result":80}, {"name":"T...

浅析Python中的getattr(),setattr(),delattr(),hasattr()

getattr()函数是Python自省的核心函数,具体使用大体如下: 获取对象引用getattr Getattr用于返回一个对象属性,或者方法 class A: def __i...

python 生成目录树及显示文件大小的代码

python 生成目录树及显示文件大小的代码

比如 1--1      2--1           2    &nbs...

详解Python3 pandas.merge用法

详解Python3 pandas.merge用法

摘要 数据分析与建模的时候大部分时间在数据准备上,包括对数据的加载、清理、转换以及重塑。pandas提供了一组高级的、灵活的、高效的核心函数,能够轻松的将数据规整化。这节主要对panda...