标签:cti http inf pass 安全协议 ESS instance smt 主机
系统环境:Ubuntu 18.04.1 LTS
Python使用的是虚拟环境:virutalenv
Python的版本:Python 3.6.9
1.安装flask-mail
pip install flask-mail
2.配置flask-mail使用qq邮箱
flask-mail STMP服务器的配置
配置 | 默认值 | 说明 |
---|---|---|
MAIL_SERVER | localhost | smtp电子邮件服务器的主机名或IP地址 |
MAIL_PORT | 25 | 电子邮件服务器的端口 |
MAIL_USE_TLS | False | 是否启用传输层(TLS,transport layer security)安全协议 |
MAIL_USE_SSL | False | 是否启用安全套接字层(SSL,secure sockets Layer)安全协议 |
MAIL_USERNAME | None | 邮件的用户名 |
MAIL_PASSWORD | None | 邮件的密码 |
app.py
代码添加如下 :
import os
app.config[‘MAIL_SERVER‘] = ‘smtp.qq.com‘
app.config[‘MAIL_PORT‘] = 587
app.config[‘MAIL_USE_TLS‘] = True
app.config[‘MAIL_USERNAME‘] = os.environ.get(‘MAIL_USERNAME‘)
app.config[‘MAIL_PASSWORD‘] = os.environ.get(‘MAIL_PASSWORD‘)
3.初始化flask-mail
from flask_mail import Mail, Message
mail = Mail(app)
因为用户名和密码都是非常敏感的信息,可以通过设置环境变量。
如下;
export MAIL_USERNAME=<qqmail username>
export MAIL_PASSWORD=<qqmail password>
(zsdpy1) zsd@zsd-virtual-machine:~/Zflask/app$ flask shell
Python 3.6.9 (default, Nov 7 2019, 10:44:02)
[GCC 8.3.0] on linux
App: app [production]
Instance: /home/zsd/Zflask/app/instance
>>> from flask_mail import Message
>>> from hello import mail
>>> from app import mail
>>> msg = Message(‘测试邮件‘,sender=‘543421410@qq.com‘,recipients=[‘543421410@qq.com‘])
>>> msg.body=‘这是第一封flask-mail的测试邮件‘
>>> with app.app_context():
... mail.send(msg)
...
可以看到发送方和接收方是同一个人。
发送的效果如下:
标签:cti http inf pass 安全协议 ESS instance smt 主机
原文地址:https://www.cnblogs.com/zhangshengdong/p/12558068.html