Часто в процессе разработки может понадобится проверить отправку почты. Работая с Python, для этого не понадобится поднимать какие-то внешние почтовые сервера или дергать админов. Стандартная установка Питона позволяет запустить SMTP сервер, который будет успешно показывать вам отправляемую вашим приложением почту.
Для запуска тестового SMTP сервера запустите в командной строке команду:
python -m smtpd -n -c DebuggingServer localhost:1025
Эта команда запустит в консоли SMTP сервер, который принимает сообщения на порту 1025 и сразу печатает их, не передавая куда-то дальше.
Отправка почты через нестандартный SMTP порт
Для отправки сообщений через нестандартный порт, нужно внести изменения в приложение. По-умолчанию используется 25 номер порта для SMTP сервера, однако по разным причинам номер порта может быть изменен.
server = smtplib.SMTP(SERVER, 1025) server.sendmail(FROM, TO, message) server.quit()
Данный формат позволит отправить сообщение на сервер, который слушает порт 1025.
Если вы используете Django, добавьте параметр EMAIL_PORT в settings.py.
Также вы можете запустить тестовый SMTP сервер на 25 порту командой::
sudo python -m smtpd -n -c DebuggingServer localhost:25