Включить часть html в почту с python libgmail


2

У меня вопрос о ее использовании: мне нужно отправить html-форматированную почту. Я готовлю сообщение с

ga = libgmail.GmailAccount(USERNAME,PASSWORD) 
msg = MIMEMultipart('alternative') 
msg.attach(part1) 
msg.attach(part2) 
... 
ga.sendMessage(msg.as_string()) 

Этот путь не работает, это, кажется, не может отправить msg методом SendMessage. Каков правильный путь? : D

1

Если вы ссылаетесь на libgmail от sourceforge, вам нужно написать свои сообщения с помощью email module.

Создайте HTML-сообщение как MIME document и включите его как часть multipart MIME message. Когда у вас есть полностью построенный многопрофильный MIME, передайте его в виде строки в конструктор libgmail, используя метод .as_string().

example in the doc содержит код для аналогичного требования:

# Create message container - the correct MIME type is multipart/alternative. 
msg = MIMEMultipart('alternative') 
msg['Subject'] = "Link" 
msg['From'] = me 
msg['To'] = you 
... 
# Record the MIME types of both parts - text/plain and text/html. 
# ... text and html are strings with appropriate content. 
part1 = MIMEText(text, 'plain') 
part2 = MIMEText(html, 'html') 

# Attach parts into message container. 
# According to RFC 2046, the last part of a multipart message, in this case 
# the HTML message, is best and preferred. 
msg.attach(part1) 
msg.attach(part2) 
  0

спасибо за объяснение. Теперь у меня есть объект msg, но я не знаю, как передать его методам libgmail для отправки почты, например libgmail.GmailAccount (USERNAME, PASSWORD) ga.sendMessage (msg.as_string()) не работает:/ 22 фев. 092009-02-22 13:57:01

  0

попытайтесь создать «GmailComposedMessage» из строки, а затем попытайтесь отправить этот объект. 22 фев. 092009-02-22 18:05:46

  0

Я не понимаю, как: / 22 фев. 092009-02-22 19:59:40