python使用SMTP发送qq或sina邮件


Posted in Python onOctober 21, 2017

python使用qq邮箱(个人邮箱)发送邮件需开启qq邮箱的SMTP服务

在设置中开启pop3/SMTP服务,返回的密码就是之后代码中登录使用账户密码(在完整代码中标识了出来)

python使用SMTP发送qq或sina邮件

之后出现如下错误

smtplib.SMTPAuthenticationError: (530, 'Error: A secure connection is requiered(such as ssl). More information at http://service.mail.qq.com/cgi-bin/help?id=28')

错误说要开ssl发送邮件

在原来的代码上添加上如下三行代码即可

smtpObj.ehlo()
smtpObj.starttls()
smtpObj.ehlo()

完整代码如下

import smtplib
from email.mime.text import MIMEText
from email.header import Header

# 第三方 SMTP 服务
mail_host = "smtp.qq.com" # 设置服务器,qq的SMTP服务host
mail_user = "xxx@qq.com" # 用户名(须修改)
mail_pass = "xxxxxxxxxxxxxxxx" # 此处为在qq开启SMTP服务时返回的密码 (须修改)

sender = 'xxx@qq.com'  # 同用户名 (须修改)
receivers = ['xxx@qq.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱

message = MIMEText('...', 'plain', 'utf-8')
message['From'] = Header("第一封python测试邮件", 'utf-8')
message['To'] = Header("测试", 'utf-8')

try:
 subject = 'Python SMTP 邮件测试'
 message['Subject'] = Header(subject, 'utf-8')
 smtpObj = smtplib.SMTP()
 smtpObj.connect(mail_host, 25) # 25 为 SMTP 端口号
 smtpObj.ehlo()
 smtpObj.starttls()
 smtpObj.ehlo()
 smtpObj.login(mail_user, mail_pass)
 smtpObj.sendmail(sender, receivers, message.as_string())
 print "邮件发送成功"
except smtplib.SMTPException :
 print "Error: 无法发送邮件"

在使用sina邮箱开启SMPT服务后使用python发送信息卡在了如下错误#不是很理解

smtplib.SMTPDataError: (553, 'Envolope sender mismatch with header from..')

成功的例子是

import smtplib
server = "smtp.sina.com"
fromaddr= "xxx@sina.com" #须修改
toaddr = "xxx@qq.com" #须修改
msg = """
to:%s
from:%s
Hello,I am smtp server
""" %(toaddr,fromaddr)
s = smtplib.SMTP(server)
s.set_debuglevel(1)
s.login("xxx@sina.com","xxx")  #须修改
s.sendmail(fromaddr,toaddr,msg)

报错的例子是

import smtplib
from email.mime.text import MIMEText
from email.header import Header
server = "smtp.sina.com"
fromaddr= "xxx@sina.com"
toaddr = "xxx@qq.com"

message = MIMEText('...', 'plain', 'utf-8')
message['From'] = Header(fromaddr, 'utf-8')
message['To'] = Header("toaddr", 'utf-8')
subject = 'Python SMTP 邮件测试'
message['Subject'] = Header(subject, 'utf-8')

s = smtplib.SMTP(server)
s.set_debuglevel(1)
s.login("xxx@sina.com","xxx")
s.sendmail(fromaddr,toaddr,message)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用PDB库调试程序
Apr 05 Python
python高手之路python处理excel文件(方法汇总)
Jan 07 Python
学习python之编写简单乘法口诀表实现代码
Feb 27 Python
Python的语言类型(详解)
Jun 24 Python
修复 Django migration 时遇到的问题解决
Jun 14 Python
python如何生成各种随机分布图
Aug 27 Python
Django model反向关联名称的方法
Dec 15 Python
Python学习笔记之字符串和字符串方法实例详解
Aug 22 Python
Python变量作用域LEGB用法解析
Feb 04 Python
Tensorflow:转置函数 transpose的使用详解
Feb 11 Python
Pyspark获取并处理RDD数据代码实例
Mar 27 Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
Feb 20 Python
python爬虫headers设置后无效的解决方法
Oct 21 #Python
Python 结巴分词实现关键词抽取分析
Oct 21 #Python
恢复百度云盘本地误删的文件脚本(简单方法)
Oct 21 #Python
Python实现对百度云的文件上传(实例讲解)
Oct 21 #Python
Python3操作SQL Server数据库(实例讲解)
Oct 21 #Python
Python3实现简单可学习的手写体识别(实例讲解)
Oct 21 #Python
python虚拟环境virtualenv的使用教程
Oct 20 #Python
You might like
espresso double下 咖啡粉超细时 饼压力对咖啡的影响
2021/03/03 冲泡冲煮
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
PHP中防止SQL注入实现代码
2011/02/19 PHP
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
php数值转换时间及时间转换数值用法示例
2017/05/18 PHP
一个符号插入器 中用到的js代码
2007/09/04 Javascript
js导出txt示例代码
2014/01/14 Javascript
深入理解JavaScript系列(17):面向对象编程之概论详细介绍
2015/03/04 Javascript
深入理解JavaScript中的对象
2015/06/04 Javascript
Javascript removeChild()删除节点及删除子节点的方法
2015/12/27 Javascript
JavaScript数组的栈方法与队列方法详解
2016/05/26 Javascript
jquery过滤特殊字符',防sql注入的实现方法
2016/08/17 Javascript
关于Vue.js一些问题和思考学习笔记(2)
2016/12/02 Javascript
微信小程序小组件 基于Canvas实现直播点赞气泡效果
2020/05/29 Javascript
angular.js指令中transclude选项及ng-transclude指令详解
2017/05/24 Javascript
JS实现颜色的10进制转化成rgba格式的方法
2017/09/04 Javascript
微信小程序自动客服功能
2017/11/02 Javascript
微信小程序搜索功能(附:小程序前端+PHP后端)
2019/02/28 Javascript
NodeJS读取分析Nginx错误日志的方法
2019/05/14 NodeJs
在小程序中推送模板消息的实现方法
2019/07/22 Javascript
基于ajax实现上传图片代码示例解析
2020/12/03 Javascript
[04:26]2014DOTA2西雅图国际邀请赛 总决赛TOPPLAY
2014/07/22 DOTA
[09:34]2018DOTA2国际邀请赛寻真——永不放弃的iG
2018/08/14 DOTA
Django学习笔记之Class-Based-View
2017/02/15 Python
Python的装饰器使用详解
2017/06/26 Python
Python 抓取微信公众号账号信息的方法
2019/06/14 Python
在Python3 numpy中mean和average的区别详解
2019/08/24 Python
Numpy的简单用法小结
2019/08/28 Python
Python爬虫解析网页的4种方式实例及原理解析
2019/12/30 Python
详解CSS3新增的背景属性
2019/12/25 HTML / CSS
银行职员自我鉴定
2014/04/20 职场文书
交通事故代理词范文
2015/05/23 职场文书
Python requests库参数提交的注意事项总结
2021/03/29 Python
html+css实现滚动到元素位置显示加载动画效果
2021/08/02 HTML / CSS
使用redis生成唯一编号及原理示例详解
2021/09/15 Redis