Найти - Пользователи
Полная версия: отправлять письма в html коде
Начало » Network » отправлять письма в html коде
1
qman
Всем привет, есть код:
def emailto(adress, smtp_server='mail.server.ru', message='', header=''):
msg = MIMEText(message, 'plain', 'cp866')
msg['Subject'] = email.Header.Header(header, 'utf-8')
me = 'robot@server.ru'
msg['From'] = me
msg['To'] = adress
msg['Content-Type'] = 'multipart/alternative;'
s = smtplib.SMTP()
s.connect(smtp_server)
you = adress
s.sendmail(me, you, msg.as_string())
s.close()
как изменить функцию для отправки писем в формате html ?
замена
msg = MIMEText(message, 'plain', 'cp866')
на
msg = MIMEText(message, 'multipart/alternative;', 'cp866')
не дает нужного результата.
j2a

msg = MIMEText(message, _charset='cp866', _subtype='html')
qman
j2a

msg = MIMEText(message, _charset='cp866', _subtype='html')
не помогает.
в приходящем письме все равно text/plain
почту получаю thunderbird ом.
может (но не должно ведь) ms exhange 5.5 что то портит?
хотя созданные в thinderbird письма в формате html отправляются нормально и читаются получателем тоже.
qman
нашел пример
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/473810
файл прикрепляется.
но html не отображается.
j2a
In [1]: from email.MIMEText import MIMEText

In [2]: from smtplib import SMTP

In [3]: msg = MIMEText('<html><body>Just the <strong>test</strong></body></html>', _charset='koi8-r', _subtype='html')

In [4]: msg['To'] = 'the.pythy@gmail.com'

In [5]: msg['From'] = 'the.pythy@gmail.com'

In [6]: smtp = SMTP()

In [7]: smtp.connect(); smtp.sendmail('the.pythy@gmail.com', ['the.pythy@gmail.com'], msg.as_string())
Out[7]:
(220,
'azure.local ESMTP Exim 3.35 #1 Fri, 07 Mar 2008 18:34:09 +0600')
Out[7]: {}
http://img212.imageshack.us/img212/3641/htmlmailyp2.png
qman
j2a
from email.MIMEText import MIMEText
from smtplib import SMTP
msg = MIMEText('<html><body>Just the <strong>test</strong></body></html>', _charset='koi8-r', _subtype='html')
msg['To'] = 'the.pythy@gmail.com'
msg['From'] = 'the.pythy@gmail.com'
smtp = SMTP()
smtp.connect(); smtp.sendmail('the.pythy@gmail.com', ['the.pythy@gmail.com'], msg.as_string())
работает.
спасибо.
оказалось что антивирусник панда на сервере в некоторых случаях резал письма.
странно только то что outlook express без проблем отображает html а mozilla thunderbird не желает показывать html.
для писем использую кодировку UTF8
j2a
qman
странно только то что outlook express без проблем отображает html а mozilla thunderbird не желает показывать html.
Ищи причину. УМВР.
david
У меня такой вопрос к теме!

Как сделать форму для отправки html email'ов

В форме 2 поля! емаил адрес кому и сам контент html письма


Как только заполняю данные жме кнопку отправить и отсылается на указыннй имал html
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB