Problems & Solutions --8 SMTP in flask_mail
来源:互联网 发布:复杂网络社区发现研究 编辑:程序博客网 时间:2024/06/07 04:55
明明按照书中的代码来写,还是出错,大半天了。
还好解决了问题。
这样的报错 :smtplib.SMTPAuthenticationError: (535, b'Error: authentication failed')
解决办法竟然很简单:
smtp
简单邮件传输协议。
然后,一般邮箱中这个服务是关闭的。
可以自己开启这个服务,以QQ邮箱为例,设置→账户设置→开启这个SMTP服务:
QQ邮箱会自动生成一个授权码,flask_mail配置环境中的PASSWORD使用这个授权码,而不是邮箱密码。
然后运行flask程序,可以正常发送邮件了:
163邮箱,开启SMTP,会要求自己设置授权码。
使用时一样的,在环境配置时使用这个授权码,而不是邮箱密码。
测试用的代码,直接将邮箱名、密码写在了flask代码中。
书中建议在运行代码前命令行中输入这些配置,flask代码从命令行中获取邮箱名、密码、收件人。
from flask import Flaskfrom flask_mail import Mail, Messageapp = Flask(__name__)app.config.update( DEBUG = True, MAIL_SERVER='smtp.qq.com', MAIL_PROT=25, MAIL_USE_TLS = True, MAIL_USE_SSL = False, MAIL_USERNAME = '(这里写邮箱名)', MAIL_PASSWORD = '(这里输入授权码)', MAIL_DEBUG = True)mail = Mail(app)@app.route('/')def index(): # sender 发送方,recipients recipients 邮件接收方列表 msg = Message("Hi!This is a test ",sender='(发送方邮箱)', recipients=['(收件人邮箱)']) # msg.body 邮件正文 msg.body = "This is a first email" # msg.attach 邮件附件添加 # msg.attach("文件名", "类型", 读取文件) with app.open_resource("E:\psu.jpg") as fp: msg.attach("image.jpg", "image/jpg", fp.read()) mail.send(msg) #发送邮件 return "Sent" #网页中显示if __name__ == "__main__": app.run() # 访问http://127.0.0.1:5000/ 会运行index函数,发送邮件
阅读全文
0 0
- Problems & Solutions --8 SMTP in flask_mail
- Problems & Solutions--parsers in bs4
- Problems & Solutions -- 5. divisions in python2 & 3
- Problems & Solutions -- 7 MySQLdb in python
- Some common problems in RAD and their solutions/work arounds
- 【转】Cygwin Problems & Solutions
- Cygwin Problems & Solutions 收藏
- U3: Problems and solutions
- Problems & Solutions -- HTTPError: Forbidden
- Problems & Solutions --3
- Problems & Solutions -- 4
- Common Problems (and Their Solutions) for java
- Oracle wait problems and potential solutions
- Stable Problems Get High-Quality Solutions
- Lesson: Common Problems (and Their Solutions)
- Problems & Solutions -- 6. MySql 中文乱码问题
- Booting problems in Solaris
- Restriction problems in eclipse
- MVP+Dragger2+Rxjava2+Retrofit+OKhttp进行开发。
- 不定宽高的水平垂直居中
- 在一个空的Eclipse中安装Android开发的ADT和SDK
- Axure游戏原型设计实例应用(四)——Einsphoton
- Android图片保存到本地,并再从本地获取图片
- Problems & Solutions --8 SMTP in flask_mail
- Python入门学习记录
- 机器学习2:开始Tensorflow之旅
- Jfreechart-Jfreechart的使用(图表绘制)[线图]
- cmd中运行程序后print中文乱码
- LR中html和url录制方式的区别
- emWin界面刷新
- python的迭代器理解
- Jfreechart-Jfreechart的使用(图表绘制)[饼图]