0

私はPythonでプログラミングしています。私はすでにメッセージと添付ファイル付きの電子メールを送信する機能を持っています....私の唯一の問題は、メッセージをHTMLにしたいということですが、私はそれを尊重していません.....

これが私が使っている関数です

def enviarCorreo(fromaddr, toaddr, text, file):
   msg = MIMEMultipart('mixed')
   msg['From'] = fromaddr
   msg['To'] = toaddr
   msg['Subject'] = 'asunto'
   msg.attach(MIMEText(text))
   #adjunto
   adjunto = MIMEBase('application', "octet-stream")
   adjunto.set_payload(open(file, "rb").read())
   encode_base64(adjunto)
   anexo = os.path.basename(file)
   adjunto.add_header('Content-Disposition', 'attachment; filename= "%s"' % anexo)
   msg.attach(adjunto)
   #enviar
   server = smtplib.SMTP('localhost')
   server.set_debuglevel(1)
   server.sendmail(fromaddr, toaddr, msg.as_string())
   server.quit()
   return

何を変更するか、何を追加するかを教えていただければ、送信するメッセージをHTMLにすることができます。

HTMLメッセージには添付されないがメッセージの一部となる画像が含まれるため、「MIXED」マルチパートを使用しています。

4

2 に答える 2

5

交換

msg.attach(MIMEText(text))

msg.attach(MIMEText(text, 'html'))

(デフォルトは「プレーン」です)

于 2011-11-28T19:04:24.673 に答える
2

HTMLメールを送信する公式ドキュメントページに例があります-http://docs.python.org/library/email-examples.html

于 2011-11-28T19:04:15.003 に答える