@MrLokans

Как узнать вывод отладочного smtp-сервера на Python?

Суть такова: есть скрипт, который отправляет письмо через smtplib, который настроен на localhost и 1025 порт. По этому же адресу и порту запущен отладочный сервер python'a. Вопрос, как из скрипта получить вывод этого сервера? На словах может быть непонятно, вот отрывки кода:

import subprocess
import shlex

command = 'python -m smtpd -n -c Debugging Server localhost:1025'
args = shlex.split(command)
p = subprocess.call(args, stdout=open('temp.txt', 'w'))
#здесь функция, которая отправляет почту через smplib.SMTP('localhost', 1025)
p.kill()


Соответственно файл temp.txt пуст, хотя если запустить сервер через терминал, то почта проходит и сообщение отображается.

Попутно параллельный вопрос: можно ли каким-либо другим образом провести отладку на локальном сервере без использования нестандартных модулей?
  • Вопрос задан
  • 2790 просмотров
Пригласить эксперта
Ответы на вопрос 2
qmax
@qmax
программер
Ужас какой.
А нафига вам вообще отдельный сервер для отправки одного сообщения?
Чем вам не угодило соединяться с настоящим сервером?
Ответ написан
Комментировать
dizballanze
@dizballanze
Software developer at Yandex
Попробуйте тестировать SMTP при помощи бесплатного сервиса debugmail.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы