邮件形式 | 内容 |
---|---|
最基本 | 收件人+主题 |
最常用 | 收件人+主题+正文 |
一般流程申请邮件 | 收件人+主题+正文+抄送 |
发报表邮件 | 收件人+主题+抄送+附件 |
加说明报表邮件 | 收件人+主题+正文+抄送+附件 |
Python调用zmail模块
import zmail zmail.server('danzhao@sunlands.com','password').send_mail('danzhao@sunlands.com',{'subject':'我是你的舔狗1号'})
把收件人改成女神
import zmail zmail.server('danzhao@sunlands.com','password').send_mail([('女神','danzhao@sunlands.com')],{'subject':'我是你的舔狗1号'})
作业:把收件人外显名改成美国队长
可能会遇到的问题
确认密码没错仍然说密码不对: 可能需要开通对应的SMTP专用密码(授权码),例如QQ邮箱
服务器无响应
部分比较特殊的邮件可能需要自行设置smtp服务器,一般是去找邮箱提供方,以263企业邮为例
这个时候需要写作如下代码
import zmail zmail.server('danzhao@sunlands.com','password',smtp_host='smtp.263.net',smtp_port=25).send_mail('danzhao@sunlands.com',{'subject':'我是你的舔狗1号'})
扩展知识:api
例如舔狗语录API:https://api.uomg.com/api/rand.qinghua
import requests import json import zmail response = requests.get('https://api.uomg.com/api/rand.qinghua') tiangou = json.loads(response.text)['content'] zmail.server('danzhao@sunlands.com','password').send_mail('danzhao@sunlands.com',{'subject':tiangou})
用Python自动发送最常用的邮件(主题+收件人+正文+抄送)
import zmail mail = dict( subject='今日数据情况', content_text='今日新录入名片100张,有效添加50张,添加率为50%' ) zmail.server('danzhao@sunlands.com','password').send_mail('danzhao@sunlands.com',mail)
在此基础上,重点突出添加率
带格式的正文
import zmail mail = dict( subject='今日数据情况', content_html='今日新录入名片100张,有效添加50张,添加率为strong>50%/strong>' ) zmail.server('danzhao@sunlands.com','password').send_mail('danzhao@sunlands.com',mail)
注:需要额外的HTML基础知识
如果有很多个收件人的时候
import zmail mail = dict( subject='今日数据情况', content_text='今日新录入名片100张,有效添加50张,添加率为50%' ) zmail.server('danzhao@sunlands.com','password').send_mail(['yupinze@sunlands.com','danzhao@sunlands.com'],mail)
可能还要抄送老大
import zmail mail = dict( subject='今日数据情况', content_text='今日新录入名片100张,有效添加50张,添加率为50%' ) zmail.server('danzhao@sunlands.com','password').send_mail('danzhao@sunlands.com',mail,cc='chenxiaomei@sunlands.com')
作业:给抄送人也改一个别名,改成天山大佬
用Python自动发送最常用的邮件(主题+收件人+正文+附件)
import zmail mail = dict( subject='今日数据情况', content_text='今日新录入名片100张,有效添加50张,添加率为50%.各组详情请见附件', attachments=r'E:\Onedrive\桌面\报表.xlsx' ) zmail.server('danzhao@sunlands.com','password').send_mail('danzhao@sunlands.com',mail)
如果有多个附件,代码如下
import zmail mail = dict( subject='今日数据情况', content_text='今日新录入名片100张,有效添加50张,添加率为50%.各组详情请见附件报表2', attachments=[r'E:\Onedrive\桌面\报表1.xlsx',r'E:\Onedrive\桌面\报表2.xlsx'] ) zmail.server('danzhao@sunlands.com','password').send_mail('danzhao@sunlands.com',mail)
作业:写一份完整的邮件代码,包含以下内容
多个收件人,收件人都外显为姓名
多个抄送人,也带上自己名字
多个附件,并在正文中注明附件作用
带格式的正文:附件名使用斜体,添加率使用加粗,领导名字使用红色加粗字体显示
主题变成一个自动带上当天日期的内容
到此这篇关于Python一行代码实现自动发邮件功能的文章就介绍到这了,更多相关Python自动发邮件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!