@HexUserHex

Какой самый простой способ отправки email из python3?

,Данный вариант у меня так и не получлось заставить работаеть:
https://python-scripts.com/send-email-smtp-python

Здесь модуль email не находит(хотя он дефотлный вроде) и не ставится.
https://www.dmosk.ru/instruktions.php?object=pytho...

Все действия делаю на самом дешманском vds, цель просто отправлять письма с html контентом раз в несколько часов.

Тестировал на yandex:

#!/usr/bin/python
import smtplib
import sys

article_name = sys.argv[1]

fromaddr = 'xxxx@yandex.ru'
toaddr = 'xxxx@gmail.com'
subj = 'Title'

msg_txt = 'Text Text'
msg = "From: %s\nTo: %s\nSubject: %s\n\n%s" % ( fromaddr, toaddr, subj, msg_txt)

username = 'yourlogin@yandex.ru'
password = 'yourpass'

server = smtplib.SMTP('smtp.yandex.ru:587')
server.set_debuglevel(1);
server.starttls()
server.login(username,password)
server.sendmail(fromaddr, toaddr, msg)
server.quit()


запуск ./script.py yourtext
  • Вопрос задан
  • 267 просмотров
Решения вопроса 1
@MasterCard000
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

msg = MIMEMultipart()
login = "test@mail.ru" # Логин почты
password = "tEst" # Пароль от почты
poluch = "test1@gmail.com" #- Кому отправляете сообщения.
msg['Subject'] = 'Тема письма'
msg['From'] = login # Тут от кого отправляли сообщения
#part = MIMEText('Тут сообщения какое-то') #просто отправить текст
part = MIMEText('Тут сообщения какое-то', "html") #передаем с html разметкой 
msg.attach(part)
#smtp.gmail.com:587 - гугла. Для него надо разрешать подключения сторонних приложениях
#в настройках аккаунта. Без этого вы не отправите сообщения и плюс вам придет сообщения на
#почту, что кто то пытался отправить от вашего имени сообщения из сторонней программы.
#smtp.mail.ru:587 - mail. Маилу пофигу на все, не чего разрешать не надо просто меняете данные и можете отправлять письма.
#Все остальные имена сервера найдете в интернете))) Они могут немного отличаться 
server = smtplib.SMTP("smtp.mail.ru:587")
server.ehlo()
server.starttls()
server.login(login, password)
server.sendmail(msg['From'], [poluch], msg.as_string())

Надеюсь я вам помог, дальше думаю разберетесь, что да и как )) Вроде бы все прокомментировал.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы