程式功能:可以指定發件人,指定抄送人,指定標題,指定內容。
郵件傳送基於
smtp(
簡單郵件傳輸協議
),郵件傳送**程式使用
smtp
協議來傳送電郵到接收者的郵件伺服器。
smtp
協議只能用來傳送郵件,不能用來接收郵件,而大多數的郵件傳送伺服器都是使用
smtp
協議。smtp
協議的預設
tcp埠號是25。
並根據該協議,利用了python的『smtplib
』和『email
『模組,完成郵件的成功傳送。
具體python**如下:
1.傳送普通文字:
import smtplib
from email.mime.text import mimetext
mailto_list=[ "****@163.com"] #單人多人均可
mail_host="smtp.sina.cn"
mail_user="*****" #郵箱字首
mail_pass="***" #一般為郵箱密碼 但163郵箱是授權碼
mail_postfix="sina.cn"
def send_mail(to_list,sub,content):
me="**"+""
msg=mimetext(content,_subtype='plain',_charset='gb2312')
msg['subject']=sub
msg['from']=me
msg['to']=";".join(to_list)
try:
server=smtplib.smtp()
server.connect(mail_host)
server.login(mail_user,mail_pass)
server.sendmail(me,to_list,msg.as_string())
server.close()
return true
except exception,e:
print str(e);
return false
for i in range(3): #迴圈
if send_mail(mailto_list,"普通文字","哈哈哈"):
print "done!"
else:
print "failed!"
2.傳送含有附件的郵件
from email.mime.text import mimetext
from email.mime.multipart import mimemultipart
import smtplib
import os
import sys
path = 'd:\\'
file_name = '我的.txt' #可傳送附件名是中文的
msg = mimemultipart('related')
msg['from'] = '****』#郵箱位址
msg['to'] = '***@bai.com'
msg['subject'] = os.path.basename(file_name)
# 郵件正文
text = mimetext('測試!', 'plain', 'gbk')
msg.attach(text)
# 郵件附件
att = mimetext(open(os.path.join(path, file_name), 'rb').read(), 'base64', 'gbk')
att.add_header('content-disposition', 'attachment', filename=('gbk', '', file_name))
msg.attach(att)
smtp = smtplib.smtp()
smtp.connect('smtp.sina.cn', '25')
smtp.login('******', '***') #第乙個是郵箱字首 第二個是密碼
smtp.sendmail(msg['from'], msg['to'], msg.as_string())
smtp.quit()
from email.mime.text import mimetext
from email.mime.multipart import mimemultipart
from email.mime.image import mimeimage
import smtplib
import mimetypes
def autosendmail():
msg=mimemultipart()
msg['to']='***@163.com'
msg['from']='****'
msg['subject'] = ''
att=mimetext("這裡是測試的傳送",'plain','gb2312')
msg.attach(att)
file1="c:\users\desktop\capture.png"
image=mimeimage(open(file1,'rb').read())
image.add_header('content-id','')
msg.attach(image)
server=smtplib.smtp()
server.connect('smtp.sina.com')
server.login('****』,』***') #郵箱字首與密碼
server.sendmail(msg['from'], msg['to'],msg.as_string())
server.quit()
autosendmail()
print '傳送成功'
自動傳送郵件
import smtplib from email.mime.text import mimetext from email.header import header 傳送郵件主題 subject python email test 編寫html型別的郵件正文 msg mimetext html u...
python 自動傳送郵件
測試環境 python3.4 發件伺服器 網易yeah 收件伺服器 移動139郵箱 注意 一定要在發件的郵箱裡面設定pop3 smtp imap為開啟狀態,要不然會報錯 535 error authentication failed 通過本程式,可以自動給自己的手機郵箱傳送郵件,在手機郵箱中把發件位...
Python自動傳送郵件
本文主要介紹如何使用python實現郵件的自動傳送。首先這個功能要求使用的模組是stmplib,email。smtp message transport protocol 簡單資訊傳輸協議,只能由於傳送郵件。下面是簡要的程式 usr bin python coding utf 8 import sm...