国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python發(fā)送email的3種方法

2019-11-25 17:37:41
字體:
供稿:網(wǎng)友

python發(fā)送email還是比較簡單的,可以通過登錄郵件服務(wù)來發(fā)送,linux下也可以使用調(diào)用sendmail命令來發(fā)送,還可以使用本地或者是遠(yuǎn)程的smtp服務(wù)來發(fā)送郵件,不管是單個(gè),群發(fā),還是抄送都比較容易實(shí)現(xiàn)。
先把幾個(gè)最簡單的發(fā)送郵件方式記錄下,像html郵件,附件等也是支持的,需要時(shí)查文檔即可
1、登錄郵件服務(wù)

復(fù)制代碼 代碼如下:

#!/usr/bin/env python 
# -*- coding: utf-8 -*- 
#python2.7x 
#send_simple_email_by_account.py  @2014-07-30 
#author: orangleliu 
 
'''''
使用python寫郵件 simple
使用126 的郵箱服務(wù)
''' 
 
import smtplib 
from email.mime.text import MIMEText 
 
SMTPserver = 'smtp.126.com' 
sender = 'liuzhizhi123@126.com' 
password = "xxxx" 
 
message = 'I send a message by Python. 你好' 
msg = MIMEText(message) 
 
msg['Subject'] = 'Test Email by Python' 
msg['From'] = sender 
msg['To'] = destination 
 
mailserver = smtplib.SMTP(SMTPserver, 25) 
mailserver.login(sender, password) 
mailserver.sendmail(sender, [sender], msg.as_string()) 
mailserver.quit() 
print 'send email success' 

2、調(diào)用sendmail命令 (linux)

復(fù)制代碼 代碼如下:

# -*- coding: utf-8 -*- 
#python2.7x 
#send_email_by_.py 
#author: orangleliu 
#date: 2014-08-15 
'''''
用的是sendmail命令的方式
 
這個(gè)時(shí)候郵件還不定可以發(fā)出來,hostname配置可能需要更改
''' 
 
from email.mime.text import MIMEText 
from subprocess import Popen, PIPE 
 
def get_sh_res(): 
    p = Popen(['/Application/2.0/nirvana/logs/log.sh'], stdout=PIPE) 
    return str(p.communicate()[0]) 
 
def mail_send(sender, recevier): 
    print "get email info..." 
    msg = MIMEText(get_sh_res()) 
    msg["From"] = sender 
    msg["To"] = recevier 
    msg["Subject"] = "Yestoday interface log results" 
    p = Popen(["/usr/sbin/sendmail", "-t"], stdin=PIPE) 
    res = p.communicate(msg.as_string()) 
    print 'mail sended ...' 
 
if __name__ == "__main__": 
    s = "957748332@qq.com" 
    r = "zhizhi.liu@chinacache.com" 
    mail_send(s, r) 

3、使用smtp服務(wù)來發(fā)送(本地或者是遠(yuǎn)程服務(wù)器)
復(fù)制代碼 代碼如下:

#!/usr/bin/env python 
# -*- coding: utf-8 -*- 
#python2.7x 
#send_email_by_smtp.py 
#author: orangleliu 
#date: 2014-08-15 
'''''
linux 下使用本地的smtp服務(wù)來發(fā)送郵件
前提要開啟smtp服務(wù),檢查的方法
#ps -ef|grep sendmail
#telnet localhost 25
 
這個(gè)時(shí)候郵件還不定可以發(fā)出來,hostname配置可能需要更改
''' 
import smtplib 
from email.mime.text import MIMEText 
from subprocess import Popen, PIPE 
 
 
def get_sh_res(): 
    p = Popen(['/Application/2.0/nirvana/logs/log.sh'], stdout=PIPE) 
    return str(p.communicate()[0]) 
 
def mail_send(sender, recevier): 
    msg = MIMEText(get_sh_res()) 
    msg["From"] = sender 
    msg["To"] = recevier 
    msg["Subject"] = "Yestoday interface log results" 
    s = smtplib.SMTP('localhost') 
    s.sendmail(sender, [recevier], msg.as_string()) 
    s.quit() 
    print 'send mail finished...' 
 
if __name__ == "__main__": 
    s = "zhizhi.liu@chinacache.com" 
    r =  s 
    mail_send(s, r) 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 宁蒗| 黄冈市| 班戈县| 缙云县| 灌阳县| 安西县| 金溪县| 牡丹江市| 来安县| 石林| 会泽县| 驻马店市| 鄢陵县| 武川县| 松桃| 无棣县| 扎鲁特旗| 澜沧| 沛县| 罗定市| 宜兴市| 荣昌县| 丰镇市| 美姑县| 榆社县| 沙河市| 吉林省| 屏南县| 揭东县| 昭通市| 静乐县| 石家庄市| 昆明市| 桂林市| 墨脱县| 临澧县| 郁南县| 阿荣旗| 丰都县| 慈利县| 澄城县|