Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 13, 2012 23:50:01

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Как отправить почту с локального компа с динамическим IP?

Везде куча примеров(но все одни и те же, без шага налево или направо). Даже стандарт прочиталhttp://rfc2.ru/5321.rfc
Не осилил , как со своего компа отправить почту, например, на учетную запись на yandex НЕ ИСПОЛЬЗУЯ их сервер smtp.yandex.ru 587?

Я так понимаю необходимо создать свой сервер(из модуля smtpd) и этим сервером отсылать почту, isn't it??

вот что я пробовал:

import smtplib
import email.utils
from email.mime.text import MIMEText
import getpass
to_email = input('recipient:')
servername = input('mail servername:')
serverport = input('mail port:')
username = input('mail username:')
password = getpass.getpass()
msg = MIMEText('Messaga wazazzzzz')
msg['To'] = email.utils.formataddr(('recipient',to_email))
msg['From'] = email.utils.formataddr(('author', username))
msg['Subject'] = 'Simple test message'
#server = smtplib.SMTP('smtp.yandex.ru', 587)
servername = servername.lstrip().rstrip()
serverport = int(serverport)
connection = smtplib.SMTP(servername, serverport)
try:
    connection.set_debuglevel(True)
    connection.ehlo()
    if connection.has_extn('STARTTLS'):
        connection.starttls()
        connection.ehlo()
    connection.login(username, password)
    connection.sendmail(msg['From'],[msg['To']], msg.as_string())
finally:
    connection.quit()

Но это клиент… Я так понимаю, это всего лишь интерфейс к учетке на SMTP сервере…

П.С.: Как в коде сделать пропуски строк?

Отредактировано buddha (Ноя. 13, 2012 23:51:55)

Офлайн

#2 Ноя. 14, 2012 04:44:07

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

Как отправить почту с локального компа с динамическим IP?

Что то вы странного хотите. Вам именно SMTP как транспорт не подходит? А чтобы доставить письмо на yandex.ru, все равно в конечном итоге придется обращаться к smtp.yandex.ru, разве что не на прямую, а через релей, но нормально настроенный релей вас не пустит. Поясните все таки суть проблемы.



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

#3 Ноя. 14, 2012 10:07:07

buddha
От:
Зарегистрирован: 2012-03-02
Сообщения: 422
Репутация: +  15  -
Профиль   Отправить e-mail  

Как отправить почту с локального компа с динамическим IP?

Суть такова… У меня на хостинге pythonanywhere.com есть простой проектик, там присутствует регистрация. Эта регистрация на данный момент использует smtp.google.com с моей учеткой на нем и паролем соответственно. Эти настроечки хранятся в открытом виде в locale_settings.py. Мне это оч не нравится. Поэтому я хотел использовать почтовик этого хоста и свою учетную запись на нем. Но почтовика они не продоставляют.

Я подумал, что в моих силах сделать smtp сервер и запустить этот процесс на хосте, а после слать почту через него(как я понял , главное чтобы адрес отправителя входил в домен сервера почты). Вот и начал пробовать. А пробую на своем компе, на котором динамический ip.



Отредактировано buddha (Ноя. 14, 2012 10:07:45)

Офлайн

#4 Ноя. 15, 2012 06:25:08

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

Как отправить почту с локального компа с динамическим IP?

Навскидку: поднять почтовик где-то еще, прописать у него ваш сервер в доверенные, указать этот почтовик в MX записи для вашего домена. У хостеров вроде все с авторизацией, так что не подойдут.



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version