python 定时发送邮件
- import smtplib
- from email.mime.text import MIMEText
- from email.mime.multipart import MIMEMultipart
- from email.header import Header
- def send_email(sender, receiver, text, subject):
- """
- 发送纯文本邮件
- :param sender:
- :param receiver:
- :param text:
- :param subject:
- :return:
- """
- mail_host = 'smtp.qq.com' # qq邮箱服务地址
- smt = smtplib.SMTP() # #实例化SMTP类,这样就可以调用SMTP对象的方法和属性
- smt.connect(mail_host, '25') # 连接服务器,第二个参数为端口号
- password = "mmmmmm" # 邮箱登录密码(需要进入qq邮箱->设置->账号->获取密码)
- try:
- smt.login(sender, password) # 登录邮箱,第一参数是发件人邮箱账号、第二个为邮箱登录密码
- message = MIMEText(text, 'plain', 'utf-8') # 实例化一个MIMEText邮件对象,该对象需要写进三个参数,分别是邮件正文,文本格式和编码
- message['Subject'] = Header(subject, 'utf-8') # 邮件标题
- try:
- smt.sendmail(sender, receiver, message.as_string()) # 发送邮件操作
- print("邮件发送成功")
- except:
- print("邮件发送失败")
- except:
- print("登录失败,请检测邮箱、密码是否正确")
- smt.quit() # 退出邮箱
- import smtplib
- from email.mime.text import MIMEText
- from email.mime.multipart import MIMEMultipart
- from email.header import Header
- def send_file(sender, receiver, file, subject):
- """
- 发送带附件的邮件
- :param sender:
- :param receiver:
- :param data:
- :param subject:
- :return:
- """
- addr = 'smtp.qq.com'
- smt = smtplib.SMTP()
- smt.connect(addr, '25')
- password = "mmmmmm"
- smt.login(sender, password)
- message = MIMEMultipart()
- message['Subject'] = Header(subject, 'utf-8')
- message['From'] = Header(sender, 'utf-8')
- message['To'] = Header(receiver, 'utf-8')
- message.attach(MIMEText("最近一周天气情况", 'plain', 'utf-8'))
- att1 = MIMEText(open(file, 'rb').read(), 'base64', 'utf-8')
- att1['Content-Type'] = 'application/octet-stream'
- att1["Content-Disposition"] = 'attachment, filename="weather.txt'
- message.attach(att1)
- smt.sendmail(sender, receiver, message.as_string())
- import smtplib
- from email.mime.text import MIMEText
- from email.mime.multipart import MIMEMultipart
- from email.header import Header
- import schedule
- import time
- def job():
- """
- 定时发送邮件
- :return:
- """
- file = writer_data(get_data())
- send_file(sender, receiver, file, subject)
- schedule.every(2).minutes.do(job)
- while True:
- schedule.run_pending()
- time.sleep(2)
python 定时发送邮件的更多相关文章
- python (18)在linux中如何实现定时发送邮件
最近要用到,定时发送邮件功能: 如何定时,当然要用到linux中crontab了 如下的代码能够定时发送邮件 #!/usr/bin/env python # -*- coding=utf-8 -*- ...
- python (18)在linux中如何实现定时发送邮件到指定邮箱,监测任务
最近要用到,定时发送邮件功能: 如何定时,当然要用到linux中crontab了 如下的代码能够定时发送邮件 #!/usr/bin/env python # -*- coding=utf-8 -*- ...
- python定时利用QQ邮件发送天气预报
大致介绍 好久没有写博客了,正好今天有时间把前几天写的利用python定时发送QQ邮件记录一下 1.首先利用request库去请求数据,天气预报使用的是和风天气的API(www.heweather.c ...
- odoo定时发送邮件
采购订单延迟或者存在部分到货的情况,定时发送邮件给相关人员 包含,采购订单明细,订单数量,已到货数量,未到货数量 <?xml version="1.0" encoding=& ...
- VBS实现定时发送邮件
原理:建立CDO.Message对象,设置好参数后直接Send就可以了 代码如下: NameSpace = "http://schemas.microsoft.com/cdo/configu ...
- 用python定时文章发布wordpress
用python定时文章发布wordpress: 流程: 采集 - 筛选文章 - wordpress文章发布. wordpress文章发布代码:python利用模块xmlrpclib发布文章非常便捷,省 ...
- spring利用javamail,quartz定时发送邮件 <转>
原文地址:spring利用javamail,quartz定时发送邮件 <转>作者:物是人非 spring提供的定时发送邮件功能,下面是一个简单的例子以供大家参考,首先从spring配置文件 ...
- java实现qq邮箱每天定时发送邮件
本周四的时候去学校的某机构值班,主要工作是帮老师送文件,干一些杂活.那天没有什么活儿,于是想起用Java实现发送邮件和接收邮件的功能.前几天接触过一点quartz框架,用来实现定时开始任务的功能.于是 ...
- python大法好——Python SMTP发送邮件
Python SMTP发送邮件 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式. py ...
- Python——SMTP发送邮件
一.定义 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式.python的smtplib ...
随机推荐
- 小程序uni-app发起网络异步请求
// uni.request({ // url: 'api/boxs/search', // // 使用监听函数防止this指向改变 // success: res => { // // 判断是 ...
- VideoPipe可视化视频结构化框架开源了!
完成多路视频并行接入.解码.多级推理.结构化数据分析.上报.编码推流等过程,插件式/pipe式编程风格,功能上类似英伟达的deepstream和华为的mxvision,但底层核心不依赖复杂难懂的gst ...
- liunx之expect操作详解
导航: 一.expect安装.介绍.使用场景二.expect使用原理三.expect使用语法四.expect使用举例五.expect相关错误处理 - - - - - - - - - 分割线 - - - ...
- 【JavaScript排序】 sort()方法(解决null、undefined、0之间的排序(混乱)问题)
JavaScript排序 - sort()方法 --解决null.undefined.0之间的排序(混乱)问题 一.普通的数组排序 JavaScript中用方法sort()为数组排序.sort() ...
- Linux、Windows下Redis的安装即Redis的基本使用详解
前言 什么是Redis Redis是一个基于内存的key-value结构数据库.Redis 是互联网技术领域使用最为广泛的存储中间件,它是「Remote Dictionary Service」的首字母 ...
- 创建线程的方式三:实现Callable接口。 --- JDK 5.0新增
如何理解实现Callable接口的方式创建多线程比实现Runnable接口创建多线程方式强大? call()可以有返回值的.call()可以抛出异常,被外面的操作捕获,获取异常的信息Callable是 ...
- `<jsp:getProperty>`动作和`<jsp:setProperty>`动作的使用在一个静态页面填写图书的基本信息,页面信息提交给其他页面,并且在其页面显示。要去将表单元素的值赋值给Java
<jsp:getProperty>动作和<jsp:setProperty>动作的使用 1.<jsp:getProperty>动作 语法格式: <jsp:get ...
- MinGW配置C语言编译器gcc和g++
首先,在 https://sourceforge.net/projects/mingw/files/latest/download 下载安装MinGW,如下图所示: 点Installation-> ...
- 33.ModelSerializer详解
ModelSerializer特点 根据Model模型的定义,自动生成字段 自动生成相应的验证器 实现create和update 自动默认将关系字段映射成PrimaryKeyRelatedField主 ...
- 三、docker镜像管理
一.docker镜像管理 1.1.镜像搜索-search 从docker镜像仓库模糊搜索镜像 用法: docker search 镜像关键字 [root@zutuanxue ~]# docker se ...