python 發送各類形式的 郵件

文件形式的郵件html

!/usr/bin/env python3python

coding: utf-8app

import smtplibui

from email.mime.textthis

import MIMETextdebug

from email.headercode

import Headerserver

sender = '***'htm

receiver = '***'圖片

subject = 'python email test'

smtpserver = 'smtp.163.com'

username = '***'

password = '***'

msg = MIMEText('你好','text','utf-8') 中文需參數‘utf-8',單字節字符不須要

msg['Subject'] = Header(subject, 'utf-8')

smtp = smtplib.SMTP()

smtp.connect('smtp.163.com')

smtp.login(username, password)

smtp.sendmail(sender, receiver,

msg.as_string())

smtp.quit()

HTML形式的郵件

!/usr/bin/env python3

coding: utf-8

import smtplib from email.mime.text

import MIMEText

sender = '***'

receiver = '***' s

ubject = 'pythonemail test'

smtpserver = 'smtp.163.com'

username = '***'

password = '***'

msg =

MIMEText('<html><h1>你好</h1></html>','html','utf-8')

msg['Subject'] =subject

smtp = smtplib.SMTP()

smtp.connect('smtp.163.com')

smtp.login(username, password) smtp.sendmail(sender, receiver,

msg.as_string()) smtp.quit()

帶圖片的HTML郵件 複製代碼 代碼以下:

!/usr/bin/env python3

coding: utf-8

import smtplib

from email.mime.multipart import MIMEMultipart

from email.mime.text import MIMEText

from email.mime.image import MIMEImage

sender = '***'

receiver = '***'

subject = 'python email test'

smtpserver = 'smtp.163.com'

username = '***'

password = '***'

msgRoot = MIMEMultipart('related')

msgRoot['Subject'] = 'test message'

msgText = MIMEText('<b>Some <i>HTML</i> text</b> and an image.<br><img src="cid:image1">

<br>good!','html','utf-8')

msgRoot.attach(msgText)

fp = open('h:\python\1.jpg', 'rb')

msgImage = MIMEImage(fp.read())

fp.close()

msgImage.add_header('Content-ID', '<image1>')

msgRoot.attach(msgImage)

smtp = smtplib.SMTP()

smtp.connect('smtp.163.com')

smtp.login(username, password)

smtp.sendmail(sender, receiver, msgRoot.as_string())

smtp.quit()

帶附件的郵件

!/usr/bin/env python3

coding: utf-8

import smtplib

from email.mime.multipart import MIMEMultipart

from email.mime.text import MIMEText

from email.mime.image import MIMEImage

sender = '***'

receiver = '***'

subject = 'python email test'

smtpserver = 'smtp.163.com'

username = '***'

password = '***'

msgRoot = MIMEMultipart('related')

msgRoot['Subject'] = 'test message'

構造附件

att = MIMEText(open('h:\python\1.jpg', 'rb').read(), 'base64','utf-8')

att["Content-Type"] = 'application/octet-stream'

att["Content-Disposition"] = 'attachment; filename="1.jpg"'

msgRoot.attach(att)

smtp = smtplib.SMTP()

smtp.connect('smtp.163.com')

smtp.login(username, password)

smtp.sendmail(sender, receiver, msgRoot.as_string())

smtp.quit()

羣郵件

!/usr/bin/env python3

coding: utf-8

import smtplib

from email.mime.text import MIMEText

sender = '***'

receiver = ['','*',……]

subject = 'python email test'

smtpserver = 'smtp.163.com'

username = '***'

password = '***'

msg = MIMEText('你好','plain','utf-8')

msg['Subject'] = subject

smtp = smtplib.SMTP()

smtp.connect('smtp.163.com')

smtp.login(username, password)

smtp.sendmail(sender, receiver, msg.as_string())

smtp.quit()

各類元素都包含的郵件

!/usr/bin/env python3

coding: utf-8

import smtplib

from email.mime.multipart import MIMEMultipart

from email.mime.text import MIMEText

from email.mime.image import MIMEImage

sender = '***'

receiver = '***'

subject = 'python email test'

smtpserver = 'smtp.163.com'

username = '***'

password = '***'

Create message container - the correct MIME type is multipart/alternative.

msg = MIMEMultipart('alternative')

msg['Subject'] = "Link"

Create the body of the message (a plain-text and an HTML version).

text = "Hi!\nHow are you?\nHere is the link you wanted:\nhttp://www.python.org"

html = """\

<html>

<head></head>

<body>

<p>Hi!<br>

   How are you?<br>

   Here is the <a href="http://www.python.org">link</a> you wanted.

</p>

</body>

</html>

""" Record the MIME types of both parts - text/plain and text/html.

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)

構造附件

att = MIMEText(open('h:\python\1.jpg', 'rb').read(), 'base64','utf-8')

att["Content-Type"] = 'application/octet-stream'

att["Content-Disposition"] = 'attachment; filename="1.jpg"

msg.attach(att)

smtp = smtplib.SMTP()

smtp.connect('smtp.163.com')

smtp.login(username, password)

smtp.sendmail(sender, receiver, msg.as_string())

smtp.quit()

基於SSL的郵件

!/usr/bin/env python3

coding: utf-8

import smtplib

from email.mime.text import MIMEText

from email.header import Header

sender = '***'

receiver = '***'

subject = 'python email test'

smtpserver = 'smtp.163.com'

username = '***'

password = '***'

msg = MIMEText('你好','plain','utf-8') 中文需參數‘utf-8',單字節字符不須要

msg['Subject'] = Header(subject, 'utf-8')

smtp = smtplib.SMTP()

smtp.connect('smtp.163.com')

smtp.ehlo()

smtp.starttls()

smtp.ehlo() smtp.set_debuglevel(1)

smtp.login(username, password)

smtp.sendmail(sender, receiver, msg.as_string())

smtp.quit()

相關文章
相關標籤/搜索