Как отправить электронное письмо без входа на сервер в Python

Я хочу отправить электронное письмо без входа на сервер в Python. Я использую Python 3.6. Я попробовал какой-то код, но получил ошибку. Вот мой код:

import smtplib                          

smtpServer='smtp.yourdomain.com'      
fromAddr='[email protected]'         
toAddr='[email protected]'     
text= "This is a test of sending email from within Python."
server = smtplib.SMTP(smtpServer)
server.set_debuglevel(1)         
server.sendmail(fromAddr, toAddr, text) 
server.quit()

Я ожидаю, что письмо должно быть отправлено без запроса идентификатора пользователя и пароля, но с ошибкой:

"smtplib.SMTPSenderRefused: (530, b'5.7.1 Клиент не прошел проверку подлинности', '[email protected]')"


person Omkar    schedule 14.04.2019    source источник
comment
Большинство почтовых серверов настроены на отказ делать то, что вы хотите.   -  person BoarGules    schedule 14.04.2019


Ответы (3)


Я пользуюсь таким. Это работа для меня на моем частном SMTP-сервере.

import smtplib

host = "server.smtp.com"
server = smtplib.SMTP(host)
FROM = "[email protected]"
TO = "[email protected]"
MSG = "Subject: Test email python\n\nBody of your message!"
server.sendmail(FROM, TO, MSG)

server.quit()
print ("Email Send")
person Marcelo Abreu    schedule 02.08.2019

Код ниже работал для меня. Сначала я открыл/включил порт 25 через Network Team и использовал его в программе.

import smtplib                          
smtpServer='smtp.yourdomain.com'      
fromAddr='[email protected]'         
toAddr='[email protected]'     
text= "This is a test of sending email from within Python."
server = smtplib.SMTP(smtpServer,25)
server.ehlo()
server.starttls()
server.sendmail(fromAddr, toAddr, text) 
server.quit()
person Omkar    schedule 18.04.2019
comment
что такое s в s.ehlo()? - person Source Matters; 02.08.2019

person    schedule
comment
Хотя этот код может решить проблему, включая объяснение того, как и почему это решает проблему, действительно поможет улучшить качество. вашего сообщения и, вероятно, приведет к большему количеству голосов. Помните, что вы отвечаете на вопрос для будущих читателей, а не только для того, кто задает сейчас. Пожалуйста, отредактируйте свой ответ, чтобы добавить пояснения и указать, какие ограничения и предположения применяются. - person Brian; 11.04.2020
comment
Спасибо вам за ваши предложения !! в следующий раз вперед я буду смотреть на это. - person shivam sharma; 15.07.2020
comment
Это предполагает, что (а) пользователь работает в Windows и (б) пользователь использует Outlook. Он также использует массивную, глючную клиентскую программу, когда достаточно простого SMTP-запроса. Это совершенно не нужно. - person Chris; 03.08.2020