Проблема со скриптом электронной почты Python

У меня есть скрипт, который будет работать каждую ночь. Я хочу, чтобы он присылал мне электронное письмо, когда он не был завершен. Я написал короткий тестовый скрипт, чтобы узнать, как отправить электронное письмо с помощью Python. В моей среде IDE он работает без сообщений об ошибках, но без электронной почты. Я работаю с одного из наших серверов (не с почтового сервера), у которого нет ограничений на электронную почту.

Я попробовал это в оболочке Python, поэтому я могу читать любые сообщения:

снимок экрана моей оболочки

Я попытался отправить на свою учетную запись gmail и получил эту ошибку:

SMTPRecipientsRefused: {'[email protected]': (550, '5.7.1 Не удалось ретранслировать')}

Любые идеи??

Больше информации:

Я изменил код, найденный здесь, для работы с нашей электронной почтой.

def send_email(user, recipient, subject, body):
    import smtplib

    FROM = user
    TO = recipient if type(recipient) is list else [recipient]
    SUBJECT = subject
    TEXT = body

    # Prepare actual message
    message = """\From: %s\nTo: %s\nSubject: %s\n\n%s
    """ % (FROM, ", ".join(TO), SUBJECT, TEXT)
    try:
        server = smtplib.SMTP("workemailserver.com")
        server.sendmail(FROM, TO, message)
        server.close()
        print 'successfully sent the mail'
    except:
        print "failed to send mail"

С этим я могу отправить электронное письмо своим коллегам, но не себе. Ничего страшного, потому что я могу использовать электронную почту коллеги в качестве отправителя. Наш «почтовый сервер» ретранслирует сообщения в office365, поэтому я не могу отправить их на свой gmail.

Моя проблема в принципе решена. Но мне так и не удалось заставить «более простой» код работать, когда я пытался отправить его коллегам?


person Brad Jones    schedule 07.01.2016    source источник
comment
Возможный дубликат почтового ящика недоступен. Ответ сервера был следующим: 5.7.1 Не удалось выполнить ретрансляцию для [email protected]   -  person tripleee    schedule 07.01.2016


Ответы (1)


SMTPRecipientsRefused: (550, «5.7.1 Не удалось ретранслировать»)

Это означает, что используемый вами сервер не может ретранслировать сообщение целевому получателю. Обычно это происходит, когда у вашего почтового сервера есть проблемы с конфигурацией.

person masnun    schedule 07.01.2016