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

yipeiwu_com6年前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 初始化一个定长的数组实例

​# 有时候我们提前知道了一个数组的大小,需要给每个元素赋值,此时append好像不管用。我们需要定义一个定# # 长的数组, python中代码如下: b = [0 f...

使用Python将数组的元素导出到变量中(unpacking)

解决的问题 需要将数组(list)或元组(tuple)中的元素导出到N个变量中。 解决的方案 任何序列都可以通过简单的变量赋值方式将其元素分配到对应的变量中,唯一的要求就是变量的数量和...

对python创建及引用动态变量名的示例讲解

实际上在python中用列表就可以实现动态变量名的管理,python中的列表中可以存储任何类型的元素: listA = [0,"str",B()] 上述列表分别存储了整数,字符串...

深入理解NumPy简明教程---数组1

目前我的工作是将NumPy引入到Pyston中(一款Dropbox实现的Python编译器/解释器)。在工作过程中,我深入接触了NumPy源码,了解其实现并提交了PR修复NumPy的bu...

Python3.5局部变量与全局变量作用域实例分析

本文实例讲述了Python3.5局部变量与全局变量作用域。分享给大家供大家参考,具体如下: 1、局部变量与全局变量定义: 在子程序(函数)中定义的变量称为:局部变量;在程序顶级(一开始)...