首页 > 编程语言 >python实现自动发送邮件

python实现自动发送邮件

时间:2022-12-03 13:31:25浏览次数:54  
标签:qq python smtp 发送 msg com 邮件

一、smtplib自带模块,发送邮件

二、email自带模块,包装内容、头部信息等

三、QQ邮箱需要生成授权码(相当于密码),163邮箱需要账号和密码

四、实战测试:

import smtplib
from email.mime.text import MIMEText #包装内容
from email.header import Header # 包装头部信息
# 登录邮箱
smtp_obj = smtplib.SMTP("smtp.qq.com")
# 邮箱的密码mctsqknolgyibgfe(授权许可)
smtp_obj.login("398*****@qq.com", "mctsqknolgyibgfe")
# 发送邮件
# 发给谁
to_person = "[email protected]"
# 主题
title = Header("测试邮件发送", "utf-8")
# 发送者
sender = Header("[email protected]","utf-8")
# 内容是什么
msg = MIMEText("这是一个关于python邮件发送", "html", "utf-8")
msg["From"]=sender # 发送者
msg["Subject"] = title
# 发送邮件
smtp_obj.sendmail("398******@qq.com", to_person, msg.as_string())

五、批量发送邮件

从表格中读取数据

import smtplib
from email.mime.text import MIMEText #包装内容
from email.header import Header # 包装头部信息
import xlrd

data = xlrd.open_workbook('名单.xlsx')
sheet = data.sheets()[0]
for i in range(sheet.nrows):
name = sheet.cell_value(i, 0)
old_money = sheet.cell_value(i, 1)
new_money = sheet.cell_value(i, 2)
# print(name, "---", old_money, "---", new_money)

# 登录邮箱
smtp_obj = smtplib.SMTP("smtp.qq.com")
# 邮箱的密码mctsqknolgyibgfe(授权许可)
smtp_obj.login("398*****@qq.com", "mctsqknolgyibgfe")
# 发送邮件
# 发给谁
to_person = "[email protected]"
# 主题
title = Header("测试邮件发送", "utf-8")
# 发送者
sender = Header("[email protected]", "utf-8")
# 内容是什么
msg = MIMEText(f"<h1>通知</h1> 您好:{name},由于<b>疫情原因</b>,公司调整**由原来的{old_money},调整为{new_money}", "html", "utf-8")
msg["From"] = sender # 发送者
msg["Subject"] = title
# 发送邮件
smtp_obj.sendmail("398******@qq.com", to_person, msg.as_string())
print(f"{name}的邮件已发送")



标签:qq,python,smtp,发送,msg,com,邮件
From: https://blog.51cto.com/u_14012524/5908535

相关文章

  • python实验报告(第13章)
    一、实验目的1.掌握Pygame的基础知识。二、实验环境python版本:3.10(64-bit)三、实验内容1.实例1  实验结果:  四、实验分析:1.掌握了Pygame的基础知识。......
  • 【Python】推荐三个好玩的图像处理库
    1.引言Python是一门高级语言,它可以实现很多功能。Python强大的原因是什么?某种程度上,在于它所拥有的现成的库,使其在编程的各个方向上都易于使用。在本文中,我将向大家展示一......
  • 2022/12/3 Python实验报告
      实验报告1、实验目的和要求了解并掌握Pygame的基本应用2、实验环境笔记本与Python书本3、实验过程实例01制作一个跳跃的小球游戏创建一个游戏......
  • 零基础学python 第七章
    实例1:创建大雁类并定义飞行方法classGeese:'''大雁类'''def__init__(self,beak,wing,claw):print("我是大雁类!我有以下特征:")print(be......
  • PythonWeb开发:90分钟用Flask搭建博客
    来自https://www.bilibili.com/video/BV1gh411q7xo?p=2&vd_source=54aa98683b2f8392aec4499961f896ce1.环境准备1.1搭建虚拟环境在项目文件夹下打开控制台,输入pytho......
  • python游戏编程
     一,实验目的Pygame是跨平台Python模块,专为电子游戏设计(包含图像、声音),创建在SDL基础上,允许实时电子游戏研发而不被低级语言舒服。基于这一设想,所有需要的游戏功能和理......
  • 运行python报错 此系统上禁止运行脚本
    无法加载文件D:\PycharmProjects\jingdong_app\venv\Scripts\activate.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅https:/go.microsoft.com/fwlink/?LinkID=135......
  • python | 一个简单的icmp shell实现(不完善)
    python|一个简单的icmpshell实现(不完善)一个是server端,一个是cilent端,其实问题还是很多的,尤其是在真实网络中的时候,这个shell只适用于直连的情况,并且data不能太大(因为ic......
  • python:一个pygame篮球自动弹跳
    一个pygame篮球自动弹跳代码:importsysimportpygamepygame.init()size=width,height=640,480screen=pygame.display.set_mode(size)color=(0,0,0)bal......
  • Python实验报告
    实验13:Pygame游戏编程一、实验目的和要求学会Pygame的基本应用二、Pygame的优点及应用  使用Python进行游戏开发的首选模块就是Pygame,专为电子游戏设计(包括图像、......