Я могу отправлять электронные письма из сценария Perl, но не из сценария Python.
Я создал perl-скрипт, который ежедневно запускается через jenkins, и, если некоторые проверки не пройдены, он отправляет мне электронное письмо.
Я пытаюсь перенести скрипт из perl в python3.7, но не могу отправить письмо от python.
Это код в perl:
use strict;
use warnings;
use Email::MIME;
use Email::Sender::Simple qw(sendmail);
use Data::Dumper;
my $message = Email::MIME->create(
header_str => [
From => 'my_email@domain.com',
To => $email,
Subject => 'just a subject',
],
attributes => {
encoding => 'quoted-printable',
charset => 'ISO-8859-1',
},
body_str => $arr_msg,
);
my $email_test = sendmail($message);
}
Это код на python:
import smtplib
server = smtplib.SMTP('127.0.0.1', 25) # also tried my-domain.com with port 2525
server.sendmail(
"me@my-domain.com",
"someone@address.com",
"this message is from python")
server.quit()
Он умирает на сервере = smtplib.SMTP ('127.0.0,1 ', 25) с ошибкой:
smtplib.SMTPServerDisconnected: Connection unexpectedly closed
Вывод lsof -i: 25
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
master 2728 root 12u IPv4 1774572613 0t0 TCP
localhost.localdomain:smtp (LISTEN)
Что это может быть?