Уведомления

Группа в Telegram: @pythonsu

#1 Июль 30, 2011 10:54:47

spensor47
От:
Зарегистрирован: 2010-12-05
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

отправка письма с вложением

Ребята, подскажите в чём ошибка.
Хочу написать прогу по отправлению писем с вложениями. Отдельно письмо доходит, а вот вложение нет.

# -*- coding: cp1251 -*-

# подключение нужных модулей
import smtplib
import os
from email.MIMEText import MIMEText
from email.MIMEBase import MIMEBase
from email import Encoders
from email.MIMEMultipart import MIMEMultipart

#Ваши данные мейл и пароль от mail ящика
mail_user = "myemail@mail.ru"
mail_password = "mypassword"

# главная функция принимающая 3 параметра
# адресат, тему письма, само сообщение
def mail(to, subject, text):
# инициализируем наши данные
# создаем почтовое сообщение
msg = MIMEMultipart()
msg = MIMEText(text, "", "cp1251")
msg['From'] = mail_user
msg['To'] = to
msg['Subject'] = subject
# инициализируем smtp сервер и отправляем письмо
mailServer = smtplib.SMTP("smtp.mail.ru", 25)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login(mail_user, mail_password)
mailServer.sendmail(mail_user, to, msg.as_string())
mailServer.close()

# прикрепляем файл к почтовому сообщению
part = MIMEBase('text', 'plain') # вложение для текстового файла
part.set_payload( open('D:\\smtplib\\day6.txt',"rb").read() )
Encoders.encode_base64(part)
part.add_header('Content-Disposition', 'attachment', filename='day6.txt')
msg.attach(part)

main = 'Hello'
mail("useremail@mail.ru","Hello from open-life!", main)
В результате приходит письмо без вложения и ошибка

Traceback (most recent call last):
File “D:\Программирование\Программирование на Python\eclipse\workspace\smtlib\s2.py”, line 64, in <module>
mail(“useremail@mail.ru”,“Hello from open-life!”, main)
File “D:\Программирование\Программирование на Python\eclipse\workspace\smtlib\s2.py”, line 40, in mail
msg.attach(part)
File “C:\Python26\lib\email\mime\nonmultipart.py”, line 24, in attach
‘Cannot attach additional subparts to non-multipart/*’)
email.errors.MultipartConversionError: Cannot attach additional subparts to non-multipart/*

#—————————————————————–

В чём проблема?

Заранее спасибо!
Слава Гвидо!



Офлайн

#2 Июль 30, 2011 15:39:33

pyuser
От:
Зарегистрирован: 2007-05-13
Сообщения: 658
Репутация: +  36  -
Профиль   Отправить e-mail  

отправка письма с вложением

Посмотрите пример и сами поймете, в чем проблема.



Офлайн

#3 Июль 30, 2011 19:11:17

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

отправка письма с вложением

Офлайн

#4 Авг. 5, 2011 13:54:25

spensor47
От:
Зарегистрирован: 2010-12-05
Сообщения: 17
Репутация: +  0  -
Профиль   Отправить e-mail  

отправка письма с вложением

спасибо большое ребята)))
помогло!



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version