#!/usr/bin/envpython
#-*-coding:utf-8-*-
#導入smtplib和MIMEText
importsmtplib,sys
fromemail.mime.textimportMIMEText
defsend_mail(sub,content):
#############
#要發給誰,這里發給1個人
mailto_list=["[email protected]"]
#####################
#設置伺服器,用戶名、口令以及郵箱的後綴
mail_host="mail.gyyx.cn"
mail_user="[email protected]"
mail_pass="123456677890"
mail_postfix="gyyx.cn"
######################
'''''
to_list:發給誰
sub:主題
content:內容
send_mail("[email protected]","sub","content")
'''
me=mail_user+"<"+mail_user+"@"+mail_postfix+">"
msg=MIMEText(content,_charset='gbk')
msg['Subject']=sub
msg['From']=me
msg['To']=";".join(mailto_list)
try:
s=smtplib.SMTP()
s.connect(mail_host)
s.login(mail_user,mail_pass)
s.sendmail(me,mailto_list,msg.as_string())
s.close()
returnTrue
exceptException,e:
printstr(e)
returnFalse
if__name__=='__main__':
ifsend_mail(u'這是python測試郵件',u'python發送郵件'):
printu'發送成功'
else:
printu'發送失敗'
❷ 如何用python發送email
有好幾個模塊,可以實現.
這里用smtplib和email來實現了一個簡單的不帶附件的郵件發送
以163郵件為服務郵箱配置的。
#coding:utf-8
importsmtplib
fromemail.mime.textimportMIMEText
fromemail.mime.multipartimportMIMEMultipart
importsys
reload(sys)
sys.setdefaultencoding("utf8")
#配置收發件人,可以發送給多個
recvaddress=['[email protected]','xxx@qq.com']
#163的用戶名和密碼,修改為你自己的
sendaddr_name='[email protected]'
sendaddr_pswd='your_password'
classSendMail:
def__init__(self,recver=None):
"""接收郵件的人:listortuple"""
ifrecverisNone:
self.sendTo=recvaddress
else:
self.sendTo=recver
defsend(self,sub,content):
"""發送郵件"""
self.msg=MIMEMultipart()
#設置發送郵件
self.msg['from']=sendaddr_name
try:
#設置郵箱伺服器
smtp=smtplib.SMTP('smtp.163.com',25)
#登錄
smtp.login(sendaddr_name,sendaddr_pswd)
#設置發送主題
self.msg['Subject']=sub
#設置郵件內容
self.msg.attach(MIMEText(content))
#發送郵件
smtp.sendmail(self.msg['from'],self.sendTo,self.msg.as_string())
smtp.close()
print(u"發送郵件成功")
exceptException,e:
print(u'發送郵件失敗:'+str(e))
raise
#調用
s=SendMail()
subject="主題"
content="這里是郵件內容"
s.send(subject,content)