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

首頁 > 編程 > Python > 正文

Python實現發送email的幾種常用方法

2019-11-25 18:17:26
字體:
來源:轉載
供稿:網友

學過Python的人都知道,實用Python實現發送email的功能還是比較簡單的,可以通過登錄郵件服務來發送,linux下也可以使用調用sendmail命令來發送,還可以使用本地或者是遠程的smtp服務來發送郵件,不管是單個,群發,還是抄送都比較容易實現。

本文就把幾個最簡單的發送郵件方式記錄下來,像html郵件,附件等也是支持的,讀者在需要時可以參考查詢一下。具體方法如下:

1.登錄郵件服務

具體代碼如下:

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

2.調用sendmail命令 (linux)

具體代碼如下:

# -*- coding: utf-8 -*-#python2.7x#send_email_by_.py#author: orangleliu#date: 2014-08-18'''用的是sendmail命令的方式這個時候郵件還不定可以發出來,hostname配置可能需要更改'''from email.mime.text import MIMETextfrom subprocess import Popen, PIPEdef 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 = "12345678@qq.com"  r = "123456@163.com"  mail_send(s, r)

3 使用smtp服務來發送(本地或者是遠程服務器)

具體代碼如下:

#!/usr/bin/env python# -*- coding: utf-8 -*-#python2.7x#send_email_by_smtp.py#author: orangleliu#date: 2014-08-18'''linux 下使用本地的smtp服務來發送郵件前提要開啟smtp服務,檢查的方法#ps -ef|grep sendmail#telnet localhost 25這個時候郵件還不定可以發出來,hostname配置可能需要更改'''import smtplibfrom email.mime.text import MIMETextfrom subprocess import Popen, PIPEdef 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 = "123456@163.com"  r = s  mail_send(s, r)

相信本文所示方法對于大家進行Python程序設計能夠起到一定的參考借鑒價值。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鄂托克前旗| 江源县| 林甸县| 遵化市| 高要市| 虹口区| 确山县| 奉节县| 伊川县| 会宁县| 伊通| 饶河县| 平泉县| 阿鲁科尔沁旗| 永清县| 大城县| 科技| 文化| 富锦市| 白玉县| 无为县| 都昌县| 安宁市| 叶城县| 漠河县| 铜山县| 东明县| 县级市| 周至县| 黄冈市| 嘉鱼县| 丹东市| 淳安县| 宜兰市| 浠水县| 博客| 大荔县| 盐源县| 西藏| 西乡县| 兴业县|