Выполнение команды shell mail с использованием python
Я использовал следующий код для отправки электронного письма, как предложено в одном из постов на аналогичную тему. Но почта не была отправлена. Какие-либо предложения?
import subprocess
recipient = 'xxxxx@gmail.com'
subject = 'test'
body = 'testing mail through python'
def send_message(recipient, subject, body):
process = subprocess.Popen(['mail', '-s', subject, recipient],
stdin=subprocess.PIPE)
process.communicate(body)
print("sent the email")
1 ответ
Решение
Ваша функция не может быть вызвана, попробуйте этот код:
import subprocess
recipient = 'xxxxx@gmail.com'
subject = 'test'
body = 'testing mail through python'
def send_message(recipient, subject, body):
try:
process = subprocess.Popen(['mail', '-s', subject, recipient],
stdin=subprocess.PIPE)
except Exception, error:
print error
process.communicate(body)
send_message(recipient, subject, body)
print("sent the email")
Май работает. Удачи.