python 发送邮件 <QQ+腾讯企业邮箱>
一、使用QQ邮箱或者腾讯企业邮箱
python 发送邮件属于网络编程方向的,在工作中,我需要经常用邮件来检测我的程序运行状况.使用起来十分方便,这里我就用腾讯企业邮箱作为我的收发邮箱来使用.
使用python 中的 smtplib 模块来实现发送电子邮件. smtplib对SMTP(Simple Mail Transfer Protocol 简单邮件传输协议)进行简单的包装.
# 创建 对象
import smtplib
smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] )
- host : STMP服务器主机,可以制定ip或者域名
- port : SMTP服务试用的端口号,一般为25
- local_hostname: 如果 SMTP 在你的本机上,你只需要指定服务器地址为 localhost 即可。
Python SMTP 对象使用 sendmail 方法发送邮件,语法如下:
SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options])
- from_addr: 邮件发送者地址。
- to_addrs: 邮件发送地址,字符串列表,可以发送给多人['addr1','addr2',....],。
- msg: 发送消息
msg 是字符串,表示邮件。邮件一般由标题,发信人,收件人,邮件内容,附件等构成,发送邮件的时候,要注意 msg 的格式。这个格式就是 smtp 协议中定义的格式。
例子
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
def mail(my_sender, my_pass, recipients):
try:
# 邮件的内容
msg = MIMEText('这是一条测试邮件,请忽略', 'plain', 'utf-8')
# [发件人的邮箱昵称、发件人邮箱账号], 昵称随便
msg['From'] = formataddr([" ", my_sender])
# [收件人邮箱昵称、收件人邮箱账号], 昵称随便
msg['To'] = formataddr([" ", recipients])
# 邮件的主题,也就是邮件的标题
msg['Subject'] = "邮件测试"
# 备注:这里使用的是QQ邮箱的服务器, 加入用腾讯企业邮箱作为发件人的话,请将"smtp.qq.com" 修改为 "smtp.exmail.qq.com"
# 发件人邮箱中的SMTP服务器,qq端口是465
server = smtplib.SMTP_SSL("smtp.qq.com", port=465)
# (发件人邮箱账号、邮箱密码)
server.login(my_sender, my_pass)
# (发件人邮箱账号、收件人邮箱账号、发送邮件)
server.sendmail(my_sender, recipients, msg.as_string())
server.quit() # 关闭连接
print("邮件发送成功")
except Exception as e:
print("邮件发送失败: ",e)
if __name__ == '__main__':
my_sender = '126xxxx261@qq.com' # 发件人邮箱账号
my_pass = 'xxxxxxxxxxxxxxxx' # 发件人邮箱授权码 / 腾讯企业邮箱请使用登陆密码
recipients = '126xxxxx261@qq.com' # 收件人邮箱账号
mail(my_sender, my_pass, recipients)
使用注意
使用QQ邮箱作为发送端的话,必须开启SMTP服务,
请点击官方教程查看具体帮助.
具体设置如下(需要发送短信)
- 1.登陆QQ邮箱,
- 2.选择 设置 --> 账户
- 3.开启 "POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务" 服务,生成授权码即可

假如使用腾讯企业邮箱,请修改
server = smtplib.SMTP_SSL("smtp.qq.com", port=465)
中的smtp.qq.com为smtp.exmail.qq.com,代码中提到
第一次写博客也有很多不足的地方,以后要多多学习,弥补自己.
有时间的话,会继续补充其他邮箱的使用,道理其实都一样
python 发送邮件 <QQ+腾讯企业邮箱>的更多相关文章
- python发送邮件
python发送邮件(无附件) ======================================================= #!/usr/bin/env python#coding ...
- python发送邮件及附件
今天给大伙说说python发送邮件,官方的多余的话自己去百度好了,还有一大堆文档说实话不到万不得已的时候一般人都不会去看,回归主题: 本人是mac如果没有按照依赖模块的请按照下面的截图安装 导入模块如 ...
- python 发送邮件实例
留言板回复作者邮件提醒 -----------2016-5-11 15:03:58-- source:python发送邮件实例
- 解读Python发送邮件
解读Python发送邮件 Python发送邮件需要smtplib和email两个模块.也正是由于我们在实际工作中可以导入这些模块,才使得处理工作中的任务变得更加的简单.今天,就来好好学习一下使用Pyt ...
- python 发送邮件例子
想到用python发送邮件 主要是服务器 有时候会产生coredump文件 ,然后因为脚本重启原因,服务器coredump产生后会重启 但是没有主动通知开发人员 想了下可以写个脚本一旦产生cored ...
- 利用python发送邮件
找了很多使用python发送邮件的文章, 发现写的并不是太全, 导致坑特别多, 刚把这个坑跨过去, 在此记录下来 本代码使用163作为发送客户端, 接收邮箱随意 首先登录163邮箱, 开启POP3/S ...
- 用Python发送邮件
文件:send.py # -*- coding:utf-8 -*- # ## 任兴测试用Python发送邮件 import os import sys import getopt import tim ...
- ETL过程跑完后,使用python发送邮件
目标库中,如果有行数为0的表,使用python发送邮件 # -*- coding:utf-8 -*- # Author: zjc # Description:send monitor info to ...
- 【转】【Python】Python发送邮件(常见四种邮件内容)
在写脚本时,放到后台运行,想知道执行情况,会通过邮件.SMS(短信).飞信.微信等方式通知管理员,用的最多的是邮件.在linux下,Shell脚本发送邮件告警是件很简单的事,有现成的邮件服务软件或者调 ...
- 使用python发送邮件
最近需要做一个功能,统计bug的数量,然后发邮件给指定人,所有就先要了解一下使用python发送邮件 代码如下: #coding: utf-8 import smtplib from email.MI ...
随机推荐
- elasticsearch中的几个概念总结
1.Geo spatial search : 地理空间搜索,可以在搜索查询中指定的某一距离内查找所要的内容.也可以返回以当前为圆心,逐渐添加圆的半径.直到找到所匹配到的内容. 參考:http://ww ...
- Centos7+httpd+fastcgi+rails安装
搭建的环境: centos7 Apache/2.4.6 fastcgi2.4.6 rails4 在安装fastcgi的时候遇到了问题: 问题: .... .. In file included fro ...
- CorePlot学习六---点击scatterPlot中的symbol点时弹出对应的凝视
因为项目须要用到用户点击 symbol时,弹出对应的具体信息,发现国内解说的比較少,经过一番搜索验证最终解决,先看效果图: 详细须要改动的代码例如以下: 首先要引用托付方法:CPTScatterPlo ...
- Android学习路线(十二)Activity生命周期——启动一个Activity
DEMO下载地址:http://download.csdn.net/detail/sweetvvck/7728735 不像其他的编程模式那样应用是通过main()函数启动的.Android系统通过调用 ...
- Seq和Ack
http://blog.csdn.net/bytebai/article/details/21752925 握手阶段: 序号 方向 seq ack1 A-& ...
- Codeforces 708D 费用流 (呃我们的考试题)
NB的题目背景 输入输出一样 考试的时候貌似只有gzz一个人搞出来了 %gzz 思路: 分情况讨论 add(x,y,C,E) C是费用 E是流量 1. f>c add(x,y,2,inf),ad ...
- Android带弹性的View
在Android开发中ListView.ScrollView用到的频率相当高,可是一个优秀的应用我们能看到它里面的效果绝对不会那么死板,安卓原生的ListView和ScrollView都不能满足这个要 ...
- codeforces 445 B DZY Loves Chemistry【并查集】
题意:给出n种化学物质,其中m对会发生化学反应,每次加入化学物质进去的时候, 如果有能够和它发生反应的,危险值就乘以2,问怎样的放入顺序使得危险值最大 将这m对会反应的用并查集处理,统计每个连通块里面 ...
- settings.xml配置的镜像
<localRepository>D:/apache-maven-3.5.4/maven-jar/repository</localRepository> <mirror ...
- Linux系统启动U盘制作工具
1.UNetbootin UNetbootin 让你创建 Ubuntu 或者其他 Linux 发行版的可引导 Live U 盘,而无需烧录 CD. 你既能让 UNetbootin 为你下载众多开箱即用 ...