Я создал новую учетную запись GMAIL для настройки SMTP-сервера через Flask.Я получаю сообщение об ошибке внизу.
Эта практика взята из этого урока: https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-x-email-support
Я хочу попрактиковаться в использовании JWT, и у меня был этот блокировщик SMTP.
File "c:\users\c94145\appdata\local\programs\python\python37-32\lib\smtplib.py", line 359, in send
raise SMTPServerDisconnected('please run connect() first')
smtplib.SMTPServerDisconnected: please run connect() first
config.py
import os
from dotenv import load_dotenv
basedir = os.path.abspath(os.path.dirname(__file__))
load_dotenv(os.path.join(basedir, '.env'))
class Config(object):
SECRET_KEY = os.environ.get('SECRET_KEY') or 'you-will-never-guess'
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or \
'mysql://root:abc123@127.0.0.1/blog'
SQLALCHEMY_TRACK_MODIFICATIONS = False
LOG_TO_STDOUT = os.environ.get('LOG_TO_STDOUT')
MAIL_SERVER = os.environ.get('smtp.gmail.com')
MAIL_PORT = int(os.environ.get('MAIL_PORT') or 587)
MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS') is not None
MAIL_USERNAME = os.environ.get('name@gmail.com')
MAIL_PASSWORD = os.environ.get('password69')
ADMINS = ['name@gmail.com']
LANGUAGES = ['en', 'es']
MS_TRANSLATOR_KEY = os.environ.get('MS_TRANSLATOR_KEY')
ELASTICSEARCH_URL = os.environ.get('ELASTICSEARCH_URL')
REDIS_URL = os.environ.get('REDIS_URL') or 'redis://'
POSTS_PER_PAGE = 25
(venv) $ set MAIL_SERVER=smtp.googlemail.com
(venv) $ set MAIL_PORT=587
(venv) $ set MAIL_USE_TLS=1
(venv) $ set MAIL_USERNAME=name@gmail.com
(venv) $ set MAIL_PASSWORD=password69
>>> from flask_mail import Message
>>> from app import mail
>>> msg = Message('test subject', sender=app.config['ADMINS'][0],
... recipients=['your-email@example.com'])
>>> msg.body = 'text body'
>>> msg.html = '<h1>HTML body</h1>'
>>> mail.send(msg)
Ошибка:
Во время обработкивышеприведенное исключение, другое исключение произошло:
Трассировка (последний вызов был последним): файл "", строка 1, в файле "c: \ users \ c94145 \ appdata \ local \ Programs \ python \ python37-32\ lib \ site-packages \ flask_mail.py ", строка 492, в файле send message.send (соединение) send" c: \ users \ c94145 \ appdata \ local \ Programs \ python \ python37-32 \ lib \ site-packages \flask_mail.py ", строка 152, в выход self.host.quit () Файл" c: \ users \ c94145 \ appdata \ local \ Programs \ python \ python37-32 \ lib \ smtplib.py "строка 984, в файле quit res = self.docmd ("quit") Файл "c: \ users \ c94145 \ appdata \ local \ Programs \ python \ python37-32 \ lib \ smtplib.py", строка 420 в файле self docmd.putcmd (cmd, args) Файл "c: \ users \ c94145 \ appdata \ local \ Programs \ python \ python37-32 \ lib \ smtplib.py", строка 367, в файле putcmd self.send (str) "c:\ users \ c94145 \ appdata \ local \ Programs \ python \ python37-32 \ lib \ smtplib.py ", строка 359, в повышении отправки SMTPServerDisconnected («сначала запустите connect ()» smtplib.SMTPServerDisconnected: сначала запустите connect ()