Python一行代码实现自动发邮件功能
作者:但老师 发布时间:2021-04-06 06:04:38
标签: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)
作业:写一份完整的邮件代码,包含以下内容
多个收件人,收件人都外显为姓名
多个抄送人,也带上自己名字
多个附件,并在正文中注明附件作用
带格式的正文:附件名使用斜体,添加率使用加粗,领导名字使用红色加粗字体显示
主题变成一个自动带上当天日期的内容
总结
来源:https://blog.csdn.net/sinat_41870148/article/details/117325734


猜你喜欢
- <!-- #include file="../conn.asp" --&
- 下载8000首儿歌的python的代码:#-*- coding: UTF-8 -*-from pyquery import PyQuery
- 本文介绍在Python环境中,实现随机森林(Random Forest,RF)回归与各自变量重要性分析与排序的过程。其中,关于基于MATLA
- JS调试技巧技巧一:格式化压缩代码 技巧二:快速跳转到某个断点的位置右侧的Breakpoints会汇总你在JS文件所有打过的断点,点击跟ch
- Linux中进程的通信方式有信号,管道,共享内存,消息队列socket等。其中管道是*nix系统进程间通信的最古老形式,所有*nix都提供这
- 查看python搜索包的路径的实现方法:python搜索包的路径存储在sys.path下查看方法:import syssys.path临时添
- Python做三子棋游戏,这个是我刚开始了解做Python小游戏的时候第一个项目,因为简单好入手,实现它的过程是我开始摸索Python的GU
- 详见代码如下: import threading import time import os import subprocess def g
- python创建一个类很简单只需要定义它就可以了.class Cat: pass就像这样就可以了,通过创建子类我们可以继承他的父
- 1.乘法和幂运算符● 单个 * 用于乘法运算● 两个 ** 表示幂运算>>> 2*3>>> 6>&
- Vuex getters动态获取state的值在做项目时,getters里有很多冗余代码,但是仔细一看可以根据参数来解决,于是决定使用传参来
- 过滤非法的SQL字符的函数代码:'*************************************************
- public bool SaveSMSMessage(SMSBatch smsBatch, DataSet smsMessages) { /
- 利用zipfile模块和pandas获取数据,代码比较简单,做个记录吧:# -*- coding: utf-8 -*-""
- mysql分组统计并求出百分比1、mysql 分组统计并列出百分比SELECT point_id,&nb
- 可以通过遍历的方法:pandas按行按列遍历Dataframe的几种方式:https://www.jb51.net/article/1726
- 最近认识了一个做Python语音识别的朋友,聊天时候说到,未来五到十年,Python人工智能会在国内掀起一股狂潮,对各种应用的冲击,不下于淘
- 本文实例讲述了JS中的算法与数据结构之集合(Set)。分享给大家供大家参考,具体如下:集合(Set)同数学中所学的一样,集合(Set)是由一
- Windows下ORACLE完全卸载:使用OUI可以卸载数据库,但卸载后注册表和文件系统内仍会有部分残留。这些残留不仅占用磁盘空间,而且影响
- 本文实例讲述了Python自动连接ssh的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/python#-*- codi