python3发邮件脚本
官方文档中建议保存token,且token是每2小时更新一次。
所以token先保存在本地token.txt文件夹中,设定计划任务每1小时删除一下token.txt。虽然造成了浪费,对于发消息不多的人还是很简单的。
# -*- coding:utf-8 -*-
import smtplib,email,sys,datetime
from email import encoders
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr class sendmail(object):
def zhuanma(self,s):
name,addr=parseaddr(s)
return formataddr((Header(name,'utf-8').encode(),addr)) def writelog(self,proname,errcont):
now=datetime.datetime.now()
today=now.strftime('%Y-%m-%d')
now=now.strftime('%Y-%m-%d %H:%M:%S')
errfile=open(proname+today+'.log','a')
errfile.write(now+' '+str(errcont)+'\n')
errfile.close() def send(self,mailto,mailmessage,mailheader):
from_addr='guoyabin@ccln.gov.cn'
password='邮箱密码'
to_addr=mailto
smtp_server='smtp.ym.163.com' msg=MIMEText(mailmessage,'plain','utf-8')
msg['From']=self.zhuanma('报警专用<%s>' % from_addr)
msg['To']=to_addr
msg['Subject']=Header(mailheader,'utf-8').encode() try:
server=smtplib.SMTP(smtp_server,25)
server.login(from_addr,password)
server.sendmail(from_addr,to_addr,msg.as_string())
server.quit()
except:
info = sys.exc_info()
errcont=info[1]
self.writelog('mailerror',errcont)
print('邮件发送失败') if __name__=='__main__':
mail=sendmail()
mail.send('guoyabin@ccln.gov.cn','我是邮件内s容','我是邮件标题s')
无耻的求一下赞助


python3发邮件脚本的更多相关文章
- SQL Server定时自动抓取耗时SQL并归档数据发邮件脚本分享
SQL Server定时自动抓取耗时SQL并归档数据发邮件脚本分享 第一步建库和建表 USE [master] GO CREATE DATABASE [MonitorElapsedHighSQL] G ...
- Python3.5 执行发邮件脚本失败【惑】==>【搞定】
Python发邮件的代码如下: 只需要填写好加粗字体,即可正常使用. from exchangelib import DELEGATE, Account, Credentials, Message, ...
- 【Python系列】Python自动发邮件脚本-html邮件内容
缘起 这段时间给朋友搞了个群发邮件的脚本,为了防止进入垃圾邮件,做了很多工作,刚搞完,垃圾邮件进入率50%,觉得还不错,如果要将垃圾邮件的进入率再调低,估计就要花钱买主机了,想想也就算了,先发一个月, ...
- 【Python系列】Python自动发邮件脚本
缘起 这段时间给朋友搞了个群发邮件的脚本,为了防止进入垃圾邮件,做了很多工作,刚搞完,垃圾邮件进入率50%,觉得还不错,如果要将垃圾邮件的进入率再调低,估计就要花钱买主机了,想想也就算了,先发一个月, ...
- python3发微信脚本
企业微信发微信脚本 #!/usr/bin/env python # -*- coding: utf-8 -*- #GuoYabin import requests,json,sys,imp imp.r ...
- 【转】python3 发邮件实例(包括:文本、html、图片、附件、SSL、群邮件)
特别留意群邮件方式,这是工作中用得多的. 附件,HTML,图片,都需要的. 文件形式的邮件 [python] view plain copy 1.#!/usr/bin/env python3 2.#c ...
- python3 发邮件 smtplib & email 库
嗨 实现了用163发送到qq的功能,遗留了两个问题: 1. 接收者list会报错:update:因为list[]会传递过去一个真的[]list,改成如下就可以了: before: maillist=[ ...
- python webdriver 登录163邮箱发邮件加附件, 外加数据和程序分离,配置文件的方式
配置文件:UiObjectMapSendMap.ini用来存放配置信息 GetOptionSendMail.py 用来读取配信息 #encoding=utf-8from selenium.webdri ...
- Python+selenium自动循环发邮件
Python源代码如下: # coding=utf-8 from selenium import webdriver from time import sleep from random import ...
随机推荐
- python极简教程05:生成器和匿名函数
测试奇谭,BUG不见. 讲解之前,我先说说我的教程和网上其他教程的区别: 1 我分享的是我在工作中高频使用的场景,是精华内容: 2 我分享的是学习方法,亦或说,是指明你该学哪些.该重点掌握哪些内容: ...
- 【解决了一个小问题】golang xorm中使用where id in (xxx),没办法使用参数替换
代码中使用XORM来从数据库查询数据,有类似如下的代码: session.Where("id in (?)", strings,Join(arr, ",")) ...
- 【新手笔记】golang中使用protocol buffers 3
主要参考了这篇帖子:https://segmentfault.com/a/1190000009277748 1.下载windows版本的PB https://github.com/protocolbu ...
- linux中链接错误的时候,快速找到缺失的符号在哪个库中
编译一个opencv程序,链接的时候出现大量的如下错误: /home/admin/opencv/opencv-master/modules/imgproc/src/color_lab.cpp:23: ...
- Cesium入门7 - Adding Terrain - 添加地形
Cesium入门7 - Adding Terrain - 添加地形 Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com ...
- Collection类集
1.Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements).一些Collection允许相同的 ...
- openSUSE修改grub来修复对win8的引导
前言:继上一次安装试用各版本linux发行版后,由于做项目将机器纯windows了一把,现在又想安回centos,各种挫折折腾两天玩残一个u盘日,其中包括自己本本的原装系统也崩了,各种泪奔,下面记录一 ...
- 什么是Filter过滤器
一,什么是Filter过滤器: JavaWeb三大组件之一 Filter过滤器是JavaEE的规范.也就是接口 Filter过滤器作用:拦截请求,过滤响应 拦截请求常见的应用场景有: 1,权限检查 2 ...
- 怎么重载网卡?ip修改 HHS服务器
目录 一:目录结构知识详述 1.网卡配置文件 2,ip修改 3.重载网卡信息 4.关闭网络管理器(因为已经有了network)所有要关闭NetworkManager不然会发生冲突 5.判断SSH服务是 ...
- linux网卡知识
使用 Vim 文本编辑器来配置网卡设备的绑定参数.网卡绑定的理论知识类似于前面学习的 RAID 硬盘组,我们需要对参与绑定的网卡设备逐个进行"初始设置".需要注意的是,这些原本独立 ...