Web自动化【7】——python 使用QQ邮箱发送邮件,端口号25,465,578,的区别,及错误码535,530的解决办法
先上代码,方式一二三分别对应使用smtp不同端口号发送邮件的实现方式。
(1)端口号25:明文传输
(2)端口号456,基于SSL协议
(3)端口号578,基于STARTTLS协议
所以实现当时会有所不同,根据不同报错信息也可以看出来。
方式一:端口号25,明文传输
from email.mime.text import MIMEText
from email.header import Header
import smtplib
server = 'smtp.qq.com'
user = '***@qq.com'
pwd = '授权码' # 开启
receiver = '****@qq.com'
subject = 'python email test'
msg = MIMEText('<HTML><H1>today is Friday!</h1></html>', 'html', 'utf-8')
msg['subject'] = Header(subject, 'utf-8')
smtp = smtplib.SMTP()
smtp.connect(server, 25)
smtp.login(user, pwd)
smtp.sendmail(user, receiver, msg.as_string())
smtp.quit()
方式二:端口号456,基于SSL协议
from email.mime.text import MIMEText
from email.header import Header
import smtplib
# xpvwyhxnsrsrbabi
server = 'smtp.qq.com'
user = '***@qq.com'
pwd = '授权码' # 开启
receiver = '***@qq.com'
subject = 'python email test'
msg = MIMEText('<HTML><H1>今天不加班!</hi></html>', 'html', 'utf-8')
msg['subject'] = Header(subject, 'utf-8')
smtp = smtplib.SMTP_SSL(server, 465) # 465端口(SMTPS):465端口是为SMTPS(SMTP-over-SSL)协议服务开放的
smtp.login(user, pwd)
smtp.sendmail(user, receiver, msg.as_string())
方式三:端口号578,基于STARTTLS协议的 属于TLS通讯协议
from email.mime.text import MIMEText
from email.header import Header
import smtplib
# xpvwyhxnsrsrbabi
server = 'smtp.qq.com'
user = '***@qq.com'
pwd = '授权码' # 开启
receiver = '****@qq.com'
subject = 'python email test'
msg = MIMEText('<HTML><H1>快下班啦!</hi></html>', 'html', 'utf-8')
msg['subject'] = Header(subject, 'utf-8')
# 方式三:587端口是STARTTLS协议的 属于TLS通讯协议,命令执行后对原文进行保护
smtp = smtplib.SMTP(server, 587)
smtp.set_debuglevel(0) # 是否为调试模式。>1即调试模式,表示输出交互调试信息
smtp.starttls()
smtp.login(user, pwd)
smtp.sendmail(user, receiver, msg.as_string())
smtp.quit()
列举一些常会遇到的报错:
常见报错一:535
报错535原因就是未将POP3/SMTP服务开启,并且第三方登录需要服务开启获取的授权码。
报错信息:
解决办法:
其中报错有个链接:http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256
根据链接步骤,打开qq邮箱,点击设置->账户,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启IMAP/SMTP服务,然后根据要求使用手机发送到指定号码,获取授权码,
这个授权码就是你接下来登录要的密码,配置完成。
注意:此时需要用授权码代替邮箱本身的Password。
常见报错二:530
错误原因: 需要一个安全的连接,例如SSL,smtp = smtplib.SMTP()。这个就是上面对应的方式二,不能使用 因此接下来我们会使用SSL的方式去登录,但是已就需要打开qq邮箱,点击设置->账户,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启IMAP/SMTP服务,然后根据要求使用手机发送到指定号码,获取授权码,这个授权码就是接下来登录要的密码,配置完成。
常见报错三:530 smtplib.SMTPAuthenticationError: (530, b’Must issue a STARTTLS command first.’)
原因是端口问题,不同端口需要不同的实现方式](https://blog.csdn.net/qq_23864697/article/details/80183854)
另外具体25,587,465端口区别见以下博文:https://blog.csdn.net/qq_23864697/article/details/80183854
Web自动化【7】——python 使用QQ邮箱发送邮件,端口号25,465,578,的区别,及错误码535,530的解决办法相关推荐
- python 用QQ邮箱发送邮件
SMTP 是发送邮件的协议.Python内置对SMTP的支持,可以发送纯文本邮件.HTML邮件以及带附件的邮箱. Python对SMTP支持有smtplib 和email 两个模块,email负责构造 ...
- smtplib库:Python使用QQ邮箱发送邮件
目录 前言 发送email文本消息 发送email图片与附件消息 前言 一般来说,每个App都有一个意见反馈功能.对于企业,其意见反馈自然是发送到其服务器上,而对于个人应用来说,因为使用的人相对较少, ...
- 使用python操作qq邮箱发送邮件
##历时3天,终于写完了这个代码, 以下全是干货 import smtplib from email.mime.text import MIMEText#确定发送方.邮箱授权码和接收方,邮件主题和内容 ...
- java qq邮箱发送端口号_java实现qq邮箱的发送
准备工作 开启PO3/SMTP服务 打开qq邮箱>账户 记住这串授权码 会用到 java发送qq邮箱实现步骤 创建一个javase的工程 3. 编写核心代码 我这里封装了 也可以不封装 /** ...
- Python登录qq邮箱发送邮件(附件)
# -*- coding: utf-8 -*- #导入smtplib和MIMETextimport smtplib,time from email.mime.text import MIMEText ...
- 用Python使用QQ邮箱发送邮件
写在开头的话:发邮件当然还是用邮箱来的方便,但是这个不可以用来装B不是 向单个人发送邮件 from email import encoders from email.header import Hea ...
- python登录qq邮箱爬邮件_python实现QQ邮箱发送邮件
本文实例为大家共享了python实现QQ邮箱发送邮件的详细代码,供大家参考,详细内容如下 1.代码: #!/usr/bin/python # -*- coding: utf-8 -*- import ...
- Python使用QQ邮箱发送多收件人email
实际开发过程中使用到邮箱的概率很高,那么如何借助python使用qq邮箱发送邮件呢? 代码很简单,短短几行代码就可以实现这个功能. 使用到的模块有smtplib和email这个两个模块,关于这两个模块 ...
- 使用QQ邮箱发送邮件,QQ邮箱的smtp设置
首先要开启QQ邮箱的smtp服务,默认是关闭的. 登录QQ邮箱,点"设置" - "帐户". 找到"POP3/SMTP服务"和"IM ...
最新文章
- weka arff稀疏数据写法
- mysql 开启innodb win版本_MySQL安装与启动——Windows系统下
- 现代软件工程 第八章 【需求分析】练习与讨论
- 载入页面时与服务器的连接被重置。_快捷指令打不开怎么回事?安装快捷指令无法载入的解决办法...
- python之验证身份证号合法性的库:id_validator
- java: Comparable比较器,数组对象比较器
- ECharts 实现地图散点图上(转载)
- c++ 禁止 unsigned 和 signed 转换_令人头疼的C++复杂的类型转换,我们如何来攻克?我来让你头脑清醒...
- python单词统计、给定一个段落()_自己动手Python写一个词频统计小项目
- php简单多态,PHP 对象 多态性 简单图形计算器
- PNG隐写入门赛 WP
- 计算机程序设计能力考试 PAT 简介(浙大)
- java pdf 修改内容_生成PDF全攻略之在已有PDF上添加内容的实现方法
- 计算机的问卷调查的题目,新颖的调查问卷的题目
- 电脑自带播放器怎么倍速播放视频
- 为potplayer播放器添加实时中文字幕
- 汽车电子点火控制系统
- python从入门到实践18章答案
- C# FileStream和StreamWriter用法
- 电子书 VS 纸质书