Python使用QQ邮箱发送服务器通知的实现方案

唐可
唐可
发布时间:2026-10-13| 4人浏览过
原创

本文介绍如何利用Python的smtplib库结合QQ邮箱SMTP服务,实现程序运行状态或中断时的自动邮件通知。通过封装Mail类处理登录与消息构建,只需配置授权码即可向指定收件人发送包含运行结果的HTML或纯文本邮件,有效替代人工值守屏幕监控。

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 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。