Python邮件自动化
1. 用Python每天给女神发送舔狗问候
用Python自动发送最基本的邮件(主题+收件人)
知识点
邮件结构
以263企业邮为例
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})
2. 用Python发每日播报
用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')
3. 用Python发送每日报表
用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爬虫、数据分析、办公自动化、全栈开发、人工智能学习资@林夕编程关键字【资料】领取
本文暂时没有评论,来添加一个吧(●'◡'●)