Python一行代码实现自动发邮件功能


Posted in Python onMay 30, 2021

1. 用Python每天给女神发送舔狗问候

用Python自动发送最基本的邮件(主题+收件人)

知识点

邮件结构

以263企业邮为例

Python一行代码实现自动发邮件功能

邮件形式 内容
最基本 收件人+主题
最常用 收件人+主题+正文
一般流程申请邮件 收件人+主题+正文+抄送
发报表邮件 收件人+主题+抄送+附件
加说明报表邮件 收件人+主题+正文+抄送+附件

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邮箱

Python一行代码实现自动发邮件功能

服务器无响应

部分比较特殊的邮件可能需要自行设置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自动发邮件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python 检查文件mime类型的方法
Dec 08 Python
python实现抽奖小程序
Apr 15 Python
如何用Python制作微信好友个性签名词云图
Jun 28 Python
Python 图像处理: 生成二维高斯分布蒙版的实例
Jul 04 Python
Django如何实现网站注册用户邮箱验证功能
Aug 14 Python
python实现的按要求生成手机号功能示例
Oct 08 Python
python 采用paramiko 远程执行命令及报错解决
Oct 21 Python
python实现将两个文件夹合并至另一个文件夹(制作数据集)
Apr 03 Python
python简单实现最大似然估计&amp;scipy库的使用详解
Apr 15 Python
python实现贪吃蛇双人大战
Apr 18 Python
Django中和时区相关的安全问题详解
Oct 12 Python
10个顶级Python实用库推荐
Mar 04 Python
深入解析NumPy中的Broadcasting广播机制
python必学知识之文件操作(建议收藏)
Python使用Kubernetes API访问集群
如何利用pygame实现打飞机小游戏
Python中requests做接口测试的方法
python关于集合的知识案例详解
May 30 #Python
教你漂亮打印Pandas DataFrames和Series
You might like
PHP 高手之路(三)
2006/10/09 PHP
PHP strtok()函数的优点分析
2010/03/02 PHP
PHP中include()与require()的区别说明
2010/03/10 PHP
2个比较经典的PHP加密解密函数分享
2014/07/01 PHP
async和DOM Script文件加载比较
2014/07/20 PHP
PHP信号量基本用法实例详解
2016/02/12 PHP
PHP常见错误提示含义解释(实用!值得收藏)
2016/04/25 PHP
php自定义函数实现统计中文字符串长度的方法小结
2017/04/15 PHP
PHP ajax+jQuery 实现批量删除功能实例代码小结
2018/12/06 PHP
浅析PHP7的多进程及实例源码
2019/04/14 PHP
xml 封装与解析(javascript和C#中)
2009/07/26 Javascript
js读取本地excel文档数据的代码
2010/11/11 Javascript
jquery中$.post()方法的简单实例
2014/02/04 Javascript
根据配置文件加载js依赖模块
2014/12/29 Javascript
jQuery内容过滤选择器用法分析
2015/02/10 Javascript
针对初学者的jQuery入门指南
2015/08/15 Javascript
js简单实现Select互换数据的方法
2015/08/17 Javascript
Vue.js实现在下拉列表区域外点击即可关闭下拉列表的功能(自定义下拉列表)
2017/05/30 Javascript
浅谈angular4实际项目搭建总结
2017/12/01 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
2018/11/10 Javascript
详解JavaScript中精度失准问题及解决方法
2020/02/04 Javascript
使用python编写批量卸载手机中安装的android应用脚本
2014/07/21 Python
跟老齐学Python之编写类之三子类
2014/10/11 Python
python编写简易聊天室实现局域网内聊天功能
2018/07/28 Python
关于初始种子自动选取的区域生长实例(python+opencv)
2020/01/16 Python
浅析Python 字符编码与文件处理
2020/09/24 Python
python从ftp获取文件并下载到本地
2020/12/05 Python
HTML5中使用json对象的实例代码
2018/09/10 HTML / CSS
小狗电器官方商城:中国高端吸尘器品牌
2017/03/29 全球购物
Jowissa官方网站:瑞士制造的手表,优雅简约的设计
2020/07/29 全球购物
linux面试题参考答案(4)
2014/09/21 面试题
老师自我鉴定范文
2013/12/25 职场文书
中学生爱国演讲稿
2014/09/05 职场文书
2014年学习委员工作总结
2014/11/14 职场文书
2015年学校教科室工作总结
2015/07/20 职场文书
八年级作文之友情
2019/11/25 职场文书